[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [qemu-upstream-unstable] Merge remote-tracking branch 'xen-staging/master' into temp2



=== This changeset includes merge from high-traffic branch ===
Commits on that branch are not reported individually.

commit 0d37748342e29854db7c9f6c47d7f58c6cfba6b2
Merge: 45e1611de8be0eae55967694dd6e627c2dc354f2 
1ebb75b1fee779621b63e84fefa7b07354c43a99
Author:     Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
AuthorDate: Fri Jan 16 15:20:40 2015 +0000
Commit:     Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
CommitDate: Fri Jan 16 15:20:40 2015 +0000

    Merge remote-tracking branch 'xen-staging/master' into temp2

 .gitignore                                         |   24 +-
 .gitmodules                                        |    3 +
 .travis.yml                                        |   63 +-
 CODING_STYLE                                       |   14 +
 MAINTAINERS                                        |  178 +-
 Makefile                                           |   77 +-
 Makefile.objs                                      |   22 +-
 Makefile.target                                    |   78 +-
 VERSION                                            |    2 +-
 accel.c                                            |  157 +
 aio-posix.c                                        |   50 +-
 aio-win32.c                                        |  268 +-
 arch_init.c                                        |  413 +-
 async.c                                            |   74 +-
 audio/Makefile.objs                                |    2 +-
 audio/alsaaudio.c                                  |   12 +-
 audio/audio.c                                      |    3 +-
 audio/audio_template.h                             |   15 +-
 audio/ossaudio.c                                   |    6 +-
 audio/spiceaudio.c                                 |    2 +-
 audio/wavcapture.c                                 |    3 +-
 backends/Makefile.objs                             |    7 +-
 backends/baum.c                                    |    4 +-
 backends/hostmem-file.c                            |  134 +
 backends/hostmem-ram.c                             |   53 +
 backends/hostmem.c                                 |  365 +
 backends/msmouse.c                                 |    4 +-
 backends/rng-egd.c                                 |    1 +
 backends/rng-random.c                              |    5 +-
 backends/rng.c                                     |   11 +-
 backends/testdev.c                                 |  131 +
 backends/tpm.c                                     |   11 +-
 balloon.c                                          |   13 -
 block-migration.c                                  |   95 +-
 block.c                                            | 1972 +++--
 block/Makefile.objs                                |   11 +-
 block/accounting.c                                 |   54 +
 block/archipelago.c                                | 1084 +++
 block/backup.c                                     |   27 +-
 block/blkdebug.c                                   |  170 +-
 block/blkverify.c                                  |  112 +-
 block/block-backend.c                              |  631 ++
 block/bochs.c                                      |   29 +-
 block/cloop.c                                      |   35 +-
 block/commit.c                                     |   79 +-
 block/cow.c                                        |  432 -
 block/curl.c                                       |  475 +-
 block/dmg.c                                        |   27 +-
 block/gluster.c                                    |  100 +-
 block/iscsi.c                                      |  732 ++-
 block/linux-aio.c                                  |  236 +-
 block/mirror.c                                     |  194 +-
 block/nbd-client.c                                 |   24 +-
 block/nbd-client.h                                 |    4 +
 block/nbd.c                                        |  139 +-
 block/nfs.c                                        |  142 +-
 block/null.c                                       |  168 +
 block/parallels.c                                  |   60 +-
 block/qapi.c                                       |   70 +-
 block/qcow.c                                       |  118 +-
 block/qcow2-cache.c                                |   22 +-
 block/qcow2-cluster.c                              |  264 +-
 block/qcow2-refcount.c                             | 1014 ++-
 block/qcow2-snapshot.c                             |   31 +-
 block/qcow2.c                                      |  828 ++-
 block/qcow2.h                                      |   30 +-
 block/qed-check.c                                  |    6 +-
 block/qed-gencb.c                                  |    4 +-
 block/qed-table.c                                  |   18 +-
 block/qed.c                                        |  282 +-
 block/qed.h                                        |   16 +-
 block/quorum.c                                     |  406 +-
 block/raw-aio.h                                    |   18 +-
 block/raw-posix.c                                  |  617 +-
 block/raw-win32.c                                  |  113 +-
 block/raw_bsd.c                                    |   36 +-
 block/rbd.c                                        |  246 +-
 block/sheepdog.c                                   |  491 +-
 block/snapshot.c                                   |    4 +
 block/ssh.c                                        |  228 +-
 block/stream.c                                     |   69 +-
 block/vdi.c                                        |  211 +-
 block/vhdx-endian.c                                |   11 +-
 block/vhdx-log.c                                   |   57 +-
 block/vhdx.c                                       |  230 +-
 block/vhdx.h                                       |    2 +
 block/vmdk.c                                       |  481 +-
 block/vpc.c                                        |  206 +-
 block/vvfat.c                                      |   68 +-
 block/win32-aio.c                                  |   55 +-
 blockdev-nbd.c                                     |    2 +-
 blockdev.c                                         |  796 ++-
 blockjob.c                                         |  172 +-
 bootdevice.c                                       |  258 +
 bsd-user/freebsd/strace.list                       |   76 +-
 bsd-user/freebsd/syscall_nr.h                      |  813 ++-
 bsd-user/main.c                                    |    6 +-
 bsd-user/mmap.c                                    |   60 -
 bsd-user/qemu.h                                    |   27 +
 bsd-user/strace.c                                  |  167 +-
 configure                                          |  528 +-
 coroutine-gthread.c                                |   36 +-
 coroutine-sigaltstack.c                            |    2 +-
 cpu-exec.c                                         |  466 +-
 cpus.c                                             |  180 +-
 cputlb.c                                           |   58 +-
 default-configs/i386-softmmu.mak                   |    1 +
 default-configs/mips-softmmu.mak                   |    1 -
 default-configs/mips64-softmmu.mak                 |    1 -
 default-configs/mipsel-softmmu.mak                 |    1 -
 default-configs/ppc-linux-user.mak                 |    1 +
 default-configs/ppc-softmmu.mak                    |    3 +-
 default-configs/ppc64-linux-user.mak               |    1 +
 default-configs/ppc64-softmmu.mak                  |    2 +
 default-configs/ppc64abi32-linux-user.mak          |    1 +
 default-configs/ppc64le-linux-user.mak             |    2 +
 default-configs/ppcemb-softmmu.mak                 |    1 +
 default-configs/s390x-softmmu.mak                  |    3 +-
 default-configs/usb.mak                            |    1 +
 default-configs/x86_64-softmmu.mak                 |    1 +
 device-hotplug.c                                   |    5 +-
 device_tree.c                                      |   55 +-
 disas.c                                            |   21 +-
 disas/Makefile.objs                                |    2 +-
 disas/arm-a64.cc                                   |    2 +-
 disas/libvixl/README                               |    2 +-
 disas/libvixl/a64/assembler-a64.h                  | 1133 ++-
 disas/libvixl/a64/constants-a64.h                  |  104 +-
 disas/libvixl/a64/cpu-a64.h                        |   27 +
 disas/libvixl/a64/decoder-a64.cc                   |   85 +-
 disas/libvixl/a64/decoder-a64.h                    |  103 +-
 disas/libvixl/a64/disasm-a64.cc                    |  486 +-
 disas/libvixl/a64/disasm-a64.h                     |   85 +-
 disas/libvixl/a64/instructions-a64.cc              |   73 +-
 disas/libvixl/a64/instructions-a64.h               |  102 +-
 disas/libvixl/code-buffer.h                        |  113 +
 disas/libvixl/globals.h                            |   42 +-
 disas/libvixl/platform.h                           |   10 +-
 disas/libvixl/utils.cc                             |   48 +-
 disas/libvixl/utils.h                              |  111 +-
 disas/mips.c                                       |  929 +++-
 disas/sparc.c                                      |   34 +-
 dma-helpers.c                                      |   89 +-
 docs/aio_notify.promela                            |  104 +
 docs/blkdebug.txt                                  |  161 +
 docs/ccid.txt                                      |   80 +-
 docs/image-fuzzer.txt                              |  239 +
 docs/memory.txt                                    |   25 +-
 docs/migration.txt                                 |   18 +-
 docs/multiple-iothreads.txt                        |  134 +
 docs/multiseat.txt                                 |  102 +
 docs/qapi-code-gen.txt                             |  345 +-
 docs/qmp/qmp-events.txt                            |  130 +-
 docs/rdma.txt                                      |    6 +-
 docs/specs/acpi_mem_hotplug.txt                    |   44 +
 docs/specs/qcow2.txt                               |   20 +-
 docs/specs/standard-vga.txt                        |   22 +-
 docs/specs/vhost-user.txt                          |  266 +
 docs/tracing.txt                                   |   50 +-
 docs/virtio-balloon-stats.txt                      |    5 +-
 docs/writing-qmp-commands.txt                      |   30 +-
 dump.c                                             |  779 +--
 exec.c                                             |  464 +-
 fpu/softfloat.c                                    |   37 +-
 fsdev/virtfs-proxy-helper.c                        |    1 +
 gdb-xml/s390-acr.xml                               |   26 +
 gdb-xml/s390-fpr.xml                               |   27 +
 gdb-xml/s390x-core64.xml                           |   28 +
 gdbstub.c                                          |   39 +-
 hmp-commands.hx                                    |   64 +-
 hmp.c                                              |  273 +-
 hmp.h                                              |   24 +
 hw/9pfs/virtio-9p-device.c                         |    3 +-
 hw/9pfs/virtio-9p-local.c                          |   50 +-
 hw/9pfs/virtio-9p-proxy.c                          |   11 +-
 hw/9pfs/virtio-9p-synth.c                          |    2 +-
 hw/9pfs/virtio-9p.c                                |    9 +-
 hw/Makefile.objs                                   |    1 +
 hw/acpi/Makefile.objs                              |    2 +
 hw/acpi/acpi_interface.c                           |   15 +
 hw/acpi/core.c                                     |   11 +-
 hw/acpi/cpu_hotplug.c                              |   34 +-
 hw/acpi/ich9.c                                     |   91 +-
 hw/acpi/memory_hotplug.c                           |  223 +
 hw/acpi/pcihp.c                                    |   23 +-
 hw/acpi/piix4.c                                    |  111 +-
 hw/alpha/dp264.c                                   |   14 +-
 hw/alpha/typhoon.c                                 |    6 +-
 hw/arm/armv7m.c                                    |   15 +-
 hw/arm/boot.c                                      |   97 +-
 hw/arm/collie.c                                    |   20 +-
 hw/arm/cubieboard.c                                |   24 +-
 hw/arm/digic_boards.c                              |    4 +-
 hw/arm/exynos4210.c                                |    9 +-
 hw/arm/exynos4_boards.c                            |   22 +-
 hw/arm/gumstix.c                                   |   12 +-
 hw/arm/highbank.c                                  |   32 +-
 hw/arm/integratorcp.c                              |   17 +-
 hw/arm/kzm.c                                       |   16 +-
 hw/arm/mainstone.c                                 |   25 +-
 hw/arm/musicpal.c                                  |   37 +-
 hw/arm/nseries.c                                   |  345 +-
 hw/arm/omap1.c                                     |   14 +-
 hw/arm/omap2.c                                     |   10 +-
 hw/arm/omap_sx1.c                                  |   37 +-
 hw/arm/palm.c                                      |   13 +-
 hw/arm/pxa2xx.c                                    |   37 +-
 hw/arm/pxa2xx_gpio.c                               |   20 +-
 hw/arm/pxa2xx_pic.c                                |    1 -
 hw/arm/realview.c                                  |   55 +-
 hw/arm/spitz.c                                     |  154 +-
 hw/arm/stellaris.c                                 |   47 +-
 hw/arm/strongarm.c                                 |   27 +-
 hw/arm/tosa.c                                      |   15 +-
 hw/arm/versatilepb.c                               |   32 +-
 hw/arm/vexpress.c                                  |   64 +-
 hw/arm/virt.c                                      |  306 +-
 hw/arm/xilinx_zynq.c                               |   25 +-
 hw/arm/z2.c                                        |   20 +-
 hw/audio/ac97.c                                    |   23 +-
 hw/audio/adlib.c                                   |   10 +-
 hw/audio/cs4231.c                                  |    3 +-
 hw/audio/cs4231a.c                                 |    3 +-
 hw/audio/es1370.c                                  |   14 +-
 hw/audio/gus.c                                     |    5 +-
 hw/audio/hda-codec.c                               |   10 +-
 hw/audio/intel-hda.c                               |   16 +-
 hw/audio/lm4549.c                                  |    5 +-
 hw/audio/marvell_88w8618.c                         |    1 -
 hw/audio/milkymist-ac97.c                          |    3 +-
 hw/audio/pl041.c                                   |    9 +-
 hw/audio/sb16.c                                    |    9 +-
 hw/audio/wm8750.c                                  |    3 +-
 hw/block/Makefile.objs                             |    2 +-
 hw/block/block.c                                   |   41 +-
 hw/block/dataplane/Makefile.objs                   |    2 +-
 hw/block/dataplane/ioq.c                           |  117 -
 hw/block/dataplane/ioq.h                           |   57 -
 hw/block/dataplane/virtio-blk.c                    |  410 +-
 hw/block/dataplane/virtio-blk.h                    |    2 +-
 hw/block/ecc.c                                     |    3 +-
 hw/block/fdc.c                                     |  182 +-
 hw/block/hd-geometry.c                             |   24 +-
 hw/block/m25p80.c                                  |   48 +-
 hw/block/nand.c                                    |   53 +-
 hw/block/nvme.c                                    |   75 +-
 hw/block/nvme.h                                    |    2 +-
 hw/block/onenand.c                                 |   74 +-
 hw/block/pflash_cfi01.c                            |   71 +-
 hw/block/pflash_cfi02.c                            |   33 +-
 hw/block/virtio-blk.c                              |  462 +-
 hw/block/xen_disk.c                                |   95 +-
 hw/bt/l2cap.c                                      |    2 +-
 hw/char/cadence_uart.c                             |    1 -
 hw/char/digic-uart.c                               |    1 -
 hw/char/escc.c                                     |  239 +-
 hw/char/exynos4210_uart.c                          |    2 -
 hw/char/imx_serial.c                               |    1 -
 hw/char/ipoctal232.c                               |    9 +-
 hw/char/lm32_juart.c                               |    3 +-
 hw/char/lm32_uart.c                                |    3 +-
 hw/char/milkymist-uart.c                           |    3 +-
 hw/char/parallel.c                                 |   18 +
 hw/char/pl011.c                                    |    3 +-
 hw/char/sclpconsole-lm.c                           |   15 +-
 hw/char/sclpconsole.c                              |   15 +-
 hw/char/serial-pci.c                               |   17 +-
 hw/char/serial.c                                   |  292 +-
 hw/char/spapr_vty.c                                |    3 +-
 hw/char/virtio-console.c                           |   12 +-
 hw/char/virtio-serial-bus.c                        |  152 +-
 hw/char/xilinx_uartlite.c                          |   32 +-
 hw/core/Makefile.objs                              |    2 +
 hw/core/hotplug.c                                  |   11 +
 hw/core/irq.c                                      |   44 +-
 hw/core/loader.c                                   |  111 +-
 hw/core/machine.c                                  |  343 +
 hw/core/nmi.c                                      |   84 +
 hw/core/null-machine.c                             |    2 +-
 hw/core/platform-bus.c                             |  253 +
 hw/core/ptimer.c                                   |    3 +-
 hw/core/qdev-properties-system.c                   |   96 +-
 hw/core/qdev-properties.c                          |   70 +-
 hw/core/qdev.c                                     |  410 +-
 hw/core/sysbus.c                                   |  104 +-
 hw/cpu/icc_bus.c                                   |   12 +-
 hw/cris/axis_dev88.c                               |   20 +-
 hw/display/ads7846.c                               |    3 +-
 hw/display/blizzard.c                              |    8 -
 hw/display/cg3.c                                   |   33 +-
 hw/display/cirrus_vga.c                            |  178 +-
 hw/display/cirrus_vga_rop.h                        |    3 +-
 hw/display/cirrus_vga_template.h                   |  102 -
 hw/display/exynos4210_fimd.c                       |    4 +-
 hw/display/g364fb.c                                |    1 -
 hw/display/jazz_led.c                              |    2 +-
 hw/display/milkymist-tmu2.c                        |    3 +-
 hw/display/milkymist-vgafb.c                       |    3 +-
 hw/display/omap_lcd_template.h                     |   10 +-
 hw/display/pxa2xx_lcd.c                            |   30 +-
 hw/display/qxl-render.c                            |   15 +-
 hw/display/qxl.c                                   |   76 +-
 hw/display/qxl.h                                   |    1 +
 hw/display/sm501.c                                 |    2 +-
 hw/display/sm501_template.h                        |    6 +-
 hw/display/ssd0303.c                               |    3 +-
 hw/display/tc6393xb.c                              |    7 +-
 hw/display/tcx.c                                   |  721 ++-
 hw/display/vga-helpers.h                           |  439 ++
 hw/display/vga-isa-mm.c                            |    2 +-
 hw/display/vga-isa.c                               |    2 +-
 hw/display/vga-pci.c                               |  136 +-
 hw/display/vga.c                                   |  627 +-
 hw/display/vga_int.h                               |   13 +-
 hw/display/vga_template.h                          |  461 --
 hw/display/vmware_vga.c                            |  135 +-
 hw/display/xenfb.c                                 |    8 +-
 hw/dma/i82374.c                                    |    7 +-
 hw/dma/i8257.c                                     |   10 +-
 hw/dma/omap_dma.c                                  |   12 +-
 hw/dma/pl330.c                                     |    5 -
 hw/dma/pxa2xx_dma.c                                |    2 -
 hw/dma/sparc32_dma.c                               |    3 +-
 hw/dma/sun4m_iommu.c                               |    3 +-
 hw/dma/xilinx_axidma.c                             |   31 +-
 hw/gpio/Makefile.objs                              |    1 +
 hw/gpio/max7310.c                                  |    3 +-
 hw/gpio/mpc8xxx.c                                  |  217 +
 hw/gpio/pl061.c                                    |   61 +-
 hw/gpio/zaurus.c                                   |    3 +-
 hw/i2c/core.c                                      |    6 +-
 hw/i2c/pm_smbus.c                                  |   68 +-
 hw/i2c/smbus.c                                     |   68 +-
 hw/i2c/smbus_eeprom.c                              |    2 +-
 hw/i2c/smbus_ich9.c                                |    1 -
 hw/i386/Makefile.objs                              |    7 +-
 hw/i386/acpi-build.c                               |  313 +-
 hw/i386/acpi-defs.h                                |   51 +
 hw/i386/acpi-dsdt-mem-hotplug.dsl                  |  176 +
 hw/i386/acpi-dsdt.dsl                              |   98 +-
 hw/i386/acpi-dsdt.hex.generated                    | 3918 ++++------
 hw/i386/intel_iommu.c                              | 1963 +++++
 hw/i386/intel_iommu_internal.h                     |  389 +
 hw/i386/kvm/apic.c                                 |    3 +
 hw/i386/kvm/clock.c                                |   68 +-
 hw/i386/kvm/i8254.c                                |    3 +-
 hw/i386/kvm/pci-assign.c                           |  299 +-
 hw/i386/kvmvapic.c                                 |   79 +-
 hw/i386/pc.c                                       |  563 ++-
 hw/i386/pc_piix.c                                  |  304 +-
 hw/i386/pc_q35.c                                   |  200 +-
 hw/i386/pc_sysfw.c                                 |   15 +-
 hw/i386/q35-acpi-dsdt.dsl                          |    8 +-
 hw/i386/q35-acpi-dsdt.hex.generated                |  876 ++-
 hw/i386/smbios.c                                   |  803 ++-
 hw/i386/ssdt-mem.dsl                               |   77 +
 hw/i386/ssdt-mem.hex.generated                     |  213 +
 hw/i386/ssdt-misc.dsl                              |    3 +
 hw/i386/ssdt-misc.hex.generated                    |   31 +-
 hw/i386/ssdt-pcihp.hex.generated                   |    6 +-
 hw/i386/ssdt-proc.hex.generated                    |    6 +-
 hw/i386/ssdt-tpm.dsl                               |   43 +
 hw/i386/ssdt-tpm.hex.generated                     |   95 +
 hw/i386/xen/xen_platform.c                         |    8 +-
 hw/ide/ahci.c                                      |  603 +-
 hw/ide/ahci.h                                      |   38 +-
 hw/ide/atapi.c                                     |   53 +-
 hw/ide/cmd646.c                                    |  101 +-
 hw/ide/core.c                                      |  515 +-
 hw/ide/ich.c                                       |   11 +-
 hw/ide/internal.h                                  |   67 +-
 hw/ide/isa.c                                       |    5 +-
 hw/ide/macio.c                                     |  125 +-
 hw/ide/microdrive.c                                |   10 +-
 hw/ide/mmio.c                                      |    9 +-
 hw/ide/pci.c                                       |   90 +-
 hw/ide/pci.h                                       |    9 +-
 hw/ide/piix.c                                      |   19 +-
 hw/ide/qdev.c                                      |   73 +-
 hw/ide/via.c                                       |    5 +-
 hw/input/adb.c                                     |    6 +-
 hw/input/hid.c                                     |  220 +-
 hw/input/lm832x.c                                  |    3 +-
 hw/input/milkymist-softusb.c                       |   32 +-
 hw/input/pckbd.c                                   |   61 +-
 hw/input/ps2.c                                     |  178 +-
 hw/input/pxa2xx_keypad.c                           |    3 +-
 hw/input/stellaris_input.c                         |    6 +-
 hw/input/tsc210x.c                                 |   30 -
 hw/input/vmmouse.c                                 |    3 +-
 hw/intc/Makefile.objs                              |    1 +
 hw/intc/allwinner-a10-pic.c                        |   24 +-
 hw/intc/apic.c                                     |   28 +-
 hw/intc/apic_common.c                              |   41 +-
 hw/intc/arm_gic.c                                  |   27 +-
 hw/intc/arm_gic_common.c                           |    2 +-
 hw/intc/arm_gic_kvm.c                              |    6 +-
 hw/intc/armv7m_nvic.c                              |   18 +-
 hw/intc/exynos4210_combiner.c                      |    2 -
 hw/intc/exynos4210_gic.c                           |    1 -
 hw/intc/gic_internal.h                             |    2 +-
 hw/intc/heathrow_pic.c                             |    6 +-
 hw/intc/i8259.c                                    |    7 +-
 hw/intc/i8259_common.c                             |    1 -
 hw/intc/imx_avic.c                                 |   10 -
 hw/intc/ioapic_common.c                            |    1 -
 hw/intc/lm32_pic.c                                 |    3 +-
 hw/intc/openpic.c                                  |  106 +-
 hw/intc/openpic_kvm.c                              |   42 +-
 hw/intc/s390_flic.c                                |  325 +-
 hw/intc/s390_flic_kvm.c                            |  432 +
 hw/intc/slavio_intctl.c                            |    6 +-
 hw/intc/xics.c                                     |  191 +-
 hw/intc/xics_kvm.c                                 |   42 +-
 hw/intc/xilinx_intc.c                              |   20 +-
 hw/ipack/ipack.c                                   |    5 +-
 hw/ipack/tpci200.c                                 |   16 +-
 hw/isa/apm.c                                       |    6 +-
 hw/isa/isa-bus.c                                   |   13 +-
 hw/isa/lpc_ich9.c                                  |   41 +-
 hw/isa/pc87312.c                                   |   12 +-
 hw/isa/piix4.c                                     |    3 +-
 hw/isa/vt82c686.c                                  |    6 +-
 hw/lm32/lm32_boards.c                              |   36 +-
 hw/lm32/milkymist.c                                |   21 +-
 hw/m68k/an5206.c                                   |   15 +-
 hw/m68k/dummy_m68k.c                               |   13 +-
 hw/m68k/mcf5208.c                                  |   15 +-
 hw/mem/Makefile.objs                               |    1 +
 hw/mem/pc-dimm.c                                   |  308 +
 hw/microblaze/boot.c                               |   17 +-
 hw/microblaze/petalogix_ml605_mmu.c                |   24 +-
 hw/microblaze/petalogix_s3adsp1800_mmu.c           |   20 +-
 hw/mips/addr.c                                     |    7 +-
 hw/mips/cputimer.c                                 |   18 +-
 hw/mips/gt64xxx_pci.c                              |   25 +-
 hw/mips/mips_fulong2e.c                            |   51 +-
 hw/mips/mips_int.c                                 |   11 +
 hw/mips/mips_jazz.c                                |   22 +-
 hw/mips/mips_malta.c                               |  271 +-
 hw/mips/mips_mipssim.c                             |   20 +-
 hw/mips/mips_r4k.c                                 |   25 +-
 hw/misc/Makefile.objs                              |    1 -
 hw/misc/eccmemctl.c                                |    3 +-
 hw/misc/exynos4210_pmu.c                           |    2 +-
 hw/misc/imx_ccm.c                                  |    1 -
 hw/misc/ivshmem.c                                  |  129 +-
 hw/misc/lm32_sys.c                                 |  180 -
 hw/misc/macio/cuda.c                               |   29 +-
 hw/misc/macio/mac_dbdma.c                          |   12 +-
 hw/misc/macio/macio.c                              |   21 +-
 hw/misc/max111x.c                                  |    3 +-
 hw/misc/milkymist-hpdmc.c                          |    3 +-
 hw/misc/milkymist-pfpu.c                           |    3 +-
 hw/misc/mst_fpga.c                                 |   11 +-
 hw/misc/omap_gpmc.c                                |    8 +-
 hw/misc/pci-testdev.c                              |    2 -
 hw/misc/pvpanic.c                                  |   13 +-
 hw/misc/slavio_misc.c                              |    3 +-
 hw/misc/tmp105.c                                   |    9 +-
 hw/misc/vfio.c                                     |  831 ++-
 hw/misc/zynq_slcr.c                                |  698 +-
 hw/moxie/moxiesim.c                                |   29 +-
 hw/net/allwinner_emac.c                            |    6 +-
 hw/net/cadence_gem.c                               |   50 +-
 hw/net/dp8393x.c                                   |    3 -
 hw/net/e1000.c                                     |  245 +-
 hw/net/e1000_regs.h                                |    9 +
 hw/net/eepro100.c                                  |   23 +-
 hw/net/fsl_etsec/rings.c                           |    2 +-
 hw/net/lance.c                                     |   15 +-
 hw/net/mcf_fec.c                                   |    3 -
 hw/net/milkymist-minimac2.c                        |    8 +-
 hw/net/mipsnet.c                                   |    3 +-
 hw/net/ne2000-isa.c                                |   48 +-
 hw/net/ne2000.c                                    |   21 +-
 hw/net/pcnet-pci.c                                 |   17 +-
 hw/net/pcnet.c                                     |   61 +-
 hw/net/pcnet.h                                     |    1 -
 hw/net/rtl8139.c                                   |   27 +-
 hw/net/smc91c111.c                                 |    2 +-
 hw/net/spapr_llan.c                                |   28 +-
 hw/net/stellaris_enet.c                            |  339 +-
 hw/net/vhost_net.c                                 |  295 +-
 hw/net/virtio-net.c                                |  202 +-
 hw/net/vmxnet3.c                                   |   52 +-
 hw/net/xgmac.c                                     |    4 +-
 hw/net/xilinx_axienet.c                            |   21 +-
 hw/net/xilinx_ethlite.c                            |   37 +-
 hw/nvram/ds1225y.c                                 |    1 -
 hw/nvram/eeprom93xx.c                              |    3 +-
 hw/nvram/fw_cfg.c                                  |   61 +-
 hw/nvram/mac_nvram.c                               |   73 +-
 hw/nvram/spapr_nvram.c                             |   98 +-
 hw/openrisc/openrisc_sim.c                         |   12 +-
 hw/pci-bridge/ioh3420.c                            |   33 +-
 hw/pci-bridge/ioh3420.h                            |    4 -
 hw/pci-bridge/pci_bridge_dev.c                     |    4 +-
 hw/pci-bridge/xio3130_downstream.c                 |   12 +-
 hw/pci-bridge/xio3130_upstream.c                   |    1 -
 hw/pci-host/apb.c                                  |  312 +-
 hw/pci-host/bonito.c                               |    3 +-
 hw/pci-host/pam.c                                  |    4 +-
 hw/pci-host/piix.c                                 |   37 +-
 hw/pci-host/ppce500.c                              |   50 +-
 hw/pci-host/prep.c                                 |    7 +-
 hw/pci-host/q35.c                                  |   67 +-
 hw/pci-host/uninorth.c                             |    2 +-
 hw/pci/msi.c                                       |    2 +-
 hw/pci/msix.c                                      |    6 +-
 hw/pci/pci-hotplug-old.c                           |   18 +-
 hw/pci/pci.c                                       |   76 +-
 hw/pci/pci_bridge.c                                |   14 +-
 hw/pci/pcie.c                                      |   85 +-
 hw/pci/pcie_aer.c                                  |    6 +-
 hw/pci/pcie_host.c                                 |    8 +-
 hw/pci/pcie_port.c                                 |    2 +-
 hw/pci/shpc.c                                      |    9 +-
 hw/pcmcia/pxa2xx.c                                 |   21 -
 hw/ppc/Makefile.objs                               |    5 +-
 hw/ppc/e500.c                                      |  401 +-
 hw/ppc/e500.h                                      |    8 +-
 hw/ppc/e500plat.c                                  |   11 +-
 hw/ppc/mac.h                                       |    6 +-
 hw/ppc/mac_newworld.c                              |   80 +-
 hw/ppc/mac_oldworld.c                              |   51 +-
 hw/ppc/mpc8544ds.c                                 |    4 +-
 hw/ppc/ppc.c                                       |   79 +
 hw/ppc/ppc405_boards.c                             |   76 +-
 hw/ppc/ppc405_uc.c                                 |    4 +-
 hw/ppc/ppc440_bamboo.c                             |   15 +-
 hw/ppc/ppc4xx_devs.c                               |   41 +-
 hw/ppc/ppc4xx_pci.c                                |   33 +-
 hw/ppc/prep.c                                      |   40 +-
 hw/ppc/spapr.c                                     |  633 ++-
 hw/ppc/spapr_events.c                              |    5 +-
 hw/ppc/spapr_hcall.c                               |  233 +-
 hw/ppc/spapr_iommu.c                               |  194 +-
 hw/ppc/spapr_pci.c                                 |  419 +-
 hw/ppc/spapr_pci_vfio.c                            |  102 +
 hw/ppc/spapr_rtas.c                                |  115 +-
 hw/ppc/spapr_vio.c                                 |   16 +-
 hw/ppc/virtex_ml507.c                              |   25 +-
 hw/s390x/css.c                                     |  246 +-
 hw/s390x/css.h                                     |    9 +-
 hw/s390x/event-facility.c                          |    7 +-
 hw/s390x/ipl.c                                     |    2 +-
 hw/s390x/s390-virtio-bus.c                         |   87 +-
 hw/s390x/s390-virtio-bus.h                         |    1 -
 hw/s390x/s390-virtio-ccw.c                         |  107 +-
 hw/s390x/s390-virtio.c                             |  120 +-
 hw/s390x/s390-virtio.h                             |    3 +
 hw/s390x/sclp.c                                    |  289 +-
 hw/s390x/sclpquiesce.c                             |    3 +-
 hw/s390x/virtio-ccw.c                              |  422 +-
 hw/s390x/virtio-ccw.h                              |   17 +-
 hw/scsi/Makefile.objs                              |    2 +-
 hw/scsi/esp-pci.c                                  |    5 +-
 hw/scsi/esp.c                                      |   15 +-
 hw/scsi/lsi53c895a.c                               |   14 +-
 hw/scsi/megasas.c                                  |  659 ++-
 hw/scsi/mfi.h                                      |   16 +-
 hw/scsi/scsi-bus.c                                 |  302 +-
 hw/scsi/scsi-disk.c                                |  413 +-
 hw/scsi/scsi-generic.c                             |  126 +-
 hw/scsi/spapr_vscsi.c                              |   24 +-
 hw/scsi/vhost-scsi.c                               |   53 +-
 hw/scsi/virtio-scsi-dataplane.c                    |  312 +
 hw/scsi/virtio-scsi.c                              |  669 ++-
 hw/scsi/vmw_pvscsi.c                               |   32 +-
 hw/sd/milkymist-memcard.c                          |   10 +-
 hw/sd/omap_mmc.c                                   |    8 +-
 hw/sd/pl181.c                                      |    3 +-
 hw/sd/pxa2xx_mmci.c                                |    4 +-
 hw/sd/sd.c                                         |   71 +-
 hw/sd/sdhci.c                                      |    8 +-
 hw/sd/ssi-sd.c                                     |    3 +-
 hw/sh4/r2d.c                                       |   18 +-
 hw/sh4/shix.c                                      |   12 +-
 hw/sparc/leon3.c                                   |   12 +-
 hw/sparc/sun4m.c                                   |  136 +-
 hw/sparc64/sun4u.c                                 |   50 +-
 hw/ssi/pl022.c                                     |    3 +-
 hw/ssi/ssi.c                                       |    7 +-
 hw/ssi/xilinx_spi.c                                |    3 +-
 hw/ssi/xilinx_spips.c                              |    1 -
 hw/timer/allwinner-a10-pit.c                       |   67 +-
 hw/timer/arm_timer.c                               |    6 +-
 hw/timer/cadence_ttc.c                             |   19 +-
 hw/timer/digic-timer.c                             |    1 -
 hw/timer/ds1338.c                                  |    1 -
 hw/timer/exynos4210_mct.c                          |   10 +-
 hw/timer/exynos4210_pwm.c                          |    2 -
 hw/timer/exynos4210_rtc.c                          |    1 -
 hw/timer/hpet.c                                    |    9 +-
 hw/timer/i8254_common.c                            |    1 -
 hw/timer/imx_epit.c                                |   19 +-
 hw/timer/imx_gpt.c                                 |   35 +-
 hw/timer/lm32_timer.c                              |    3 +-
 hw/timer/m48t59.c                                  |    3 +-
 hw/timer/mc146818rtc.c                             |  101 +-
 hw/timer/milkymist-sysctl.c                        |    3 +-
 hw/timer/pxa2xx_timer.c                            |    3 -
 hw/timer/slavio_timer.c                            |    6 +-
 hw/timer/tusb6010.c                                |    3 -
 hw/timer/twl92230.c                                |    6 +-
 hw/timer/xilinx_timer.c                            |   22 +-
 hw/tpm/tpm_tis.c                                   |   11 +-
 hw/tpm/tpm_tis.h                                   |    8 +-
 hw/tricore/Makefile.objs                           |    1 +
 hw/tricore/tricore_testboard.c                     |  124 +
 hw/unicore32/puv3.c                                |   13 +-
 hw/usb/Makefile.objs                               |    5 +
 hw/usb/bus.c                                       |  117 +-
 hw/usb/ccid-card-emulated.c                        |   29 +-
 hw/usb/core.c                                      |   21 +
 hw/usb/desc-msos.c                                 |    6 +-
 hw/usb/desc.c                                      |   12 -
 hw/usb/desc.h                                      |    1 +
 hw/usb/dev-audio.c                                 |    7 +-
 hw/usb/dev-bluetooth.c                             |    6 +-
 hw/usb/dev-hid.c                                   |  204 +-
 hw/usb/dev-hub.c                                   |   13 +-
 hw/usb/dev-mtp.c                                   | 1127 +++
 hw/usb/dev-network.c                               |   20 +-
 hw/usb/dev-serial.c                                |   24 +-
 hw/usb/dev-smartcard-reader.c                      |   13 +-
 hw/usb/dev-storage.c                               |  127 +-
 hw/usb/dev-uas.c                                   |   17 +-
 hw/usb/dev-wacom.c                                 |    5 +-
 hw/usb/hcd-ehci-pci.c                              |   28 +-
 hw/usb/hcd-ehci-sysbus.c                           |    2 +-
 hw/usb/hcd-ehci.c                                  |  120 +-
 hw/usb/hcd-ehci.h                                  |    3 +
 hw/usb/hcd-musb.c                                  |    8 +-
 hw/usb/hcd-ohci.c                                  |  384 +-
 hw/usb/hcd-uhci.c                                  |   79 +-
 hw/usb/hcd-xhci.c                                  |  149 +-
 hw/usb/host-libusb.c                               |  198 +-
 hw/usb/redirect.c                                  |  171 +-
 hw/virtio/Makefile.objs                            |    4 +-
 hw/virtio/dataplane/vring.c                        |   33 +-
 hw/virtio/vhost-backend.c                          |   69 +
 hw/virtio/vhost-user.c                             |  351 +
 hw/virtio/vhost.c                                  |  111 +-
 hw/virtio/virtio-balloon.c                         |   90 +-
 hw/virtio/virtio-mmio.c                            |   23 +-
 hw/virtio/virtio-pci.c                             |  132 +-
 hw/virtio/virtio-pci.h                             |    6 +-
 hw/virtio/virtio-rng.c                             |   32 +-
 hw/virtio/virtio.c                                 |  247 +-
 hw/watchdog/watchdog.c                             |   31 +-
 hw/watchdog/wdt_i6300esb.c                         |   22 +-
 hw/watchdog/wdt_ib700.c                            |   10 +-
 hw/xen/xen_backend.c                               |    1 -
 hw/xen/xen_devconfig.c                             |    1 +
 hw/xen/xen_pt.c                                    |   20 -
 hw/xen/xen_pt_msi.c                                |    2 -
 hw/xenpv/xen_machine_pv.c                          |   10 +-
 hw/xtensa/Makefile.objs                            |    4 +-
 hw/xtensa/bootparam.h                              |   49 +
 hw/xtensa/pic_cpu.c                                |    4 +-
 hw/xtensa/sim.c                                    |  120 +
 hw/xtensa/xtensa_bootparam.h                       |   25 -
 hw/xtensa/xtensa_lx60.c                            |  360 -
 hw/xtensa/xtensa_sim.c                             |  118 -
 hw/xtensa/xtfpga.c                                 |  448 ++
 include/block/accounting.h                         |   57 +
 include/block/aio.h                                |   76 +-
 include/block/block.h                              |  227 +-
 include/block/block_int.h                          |  176 +-
 include/block/blockjob.h                           |   67 +-
 include/block/coroutine.h                          |   21 +-
 include/block/nbd.h                                |   12 +
 include/block/qapi.h                               |    4 -
 include/block/scsi.h                               |    2 +
 include/block/thread-pool.h                        |   10 +-
 include/elf.h                                      |   45 +-
 include/exec/cpu-all.h                             |  141 +-
 include/exec/cpu-common.h                          |    9 +
 include/exec/cpu-defs.h                            |    9 +-
 include/exec/cpu_ldst.h                            |  400 +
 include/exec/cpu_ldst_template.h                   |  193 +
 include/exec/def-helper.h                          |  274 -
 include/exec/exec-all.h                            |   46 +-
 include/exec/helper-gen.h                          |   72 +
 include/exec/helper-head.h                         |  134 +
 include/exec/helper-proto.h                        |   40 +
 include/exec/helper-tcg.h                          |   49 +
 include/exec/memory.h                              |  114 +-
 include/exec/ram_addr.h                            |   47 +-
 include/exec/softmmu_exec.h                        |  164 -
 include/exec/softmmu_header.h                      |  213 -
 include/exec/softmmu_template.h                    |  525 --
 include/fpu/softfloat.h                            |    4 +
 include/glib-compat.h                              |  174 +
 include/hw/acpi/acpi.h                             |    5 +
 include/hw/acpi/acpi_dev_interface.h               |   43 +
 include/hw/acpi/cpu_hotplug.h                      |    9 +-
 include/hw/acpi/cpu_hotplug_defs.h                 |   32 -
 include/hw/acpi/ich9.h                             |    8 +-
 include/hw/acpi/memory_hotplug.h                   |   38 +
 include/hw/acpi/pc-hotplug.h                       |   56 +
 include/hw/acpi/tpm.h                              |   29 +
 include/hw/arm/arm.h                               |    2 +-
 include/hw/arm/omap.h                              |    4 +-
 include/hw/arm/pxa.h                               |    2 +-
 include/hw/block/block.h                           |   13 +-
 include/hw/block/flash.h                           |    6 +-
 include/hw/boards.h                                |   81 +-
 include/hw/compat.h                                |   35 +
 include/hw/elf_ops.h                               |   15 +-
 include/hw/hotplug.h                               |   16 +-
 include/hw/i2c/smbus.h                             |   18 +-
 include/hw/i386/apic_internal.h                    |    1 +
 include/hw/i386/ich9.h                             |    2 +-
 include/hw/i386/intel_iommu.h                      |  120 +
 include/hw/i386/pc.h                               |  158 +-
 include/hw/i386/smbios.h                           |  112 +-
 include/hw/input/hid.h                             |    4 +-
 include/hw/irq.h                                   |    5 +-
 include/hw/isa/pc87312.h                           |    3 -
 include/hw/loader.h                                |    8 +-
 include/hw/mem/pc-dimm.h                           |   81 +
 include/hw/mips/cpudevs.h                          |    2 +
 include/hw/misc/vfio.h                             |    9 +
 include/hw/net/allwinner_emac.h                    |    1 +
 include/hw/nmi.h                                   |   49 +
 include/hw/nvram/fw_cfg.h                          |    2 +
 include/hw/pci-host/pam.h                          |    2 +-
 include/hw/pci-host/q35.h                          |    2 +
 include/hw/pci-host/spapr.h                        |   56 +-
 include/hw/pci/pci.h                               |    7 +
 include/hw/pci/pci_ids.h                           |    1 +
 include/hw/pci/pcie.h                              |   13 +-
 include/hw/pci/pcie_host.h                         |    1 -
 include/hw/pci/pcie_regs.h                         |    2 +
 include/hw/pci/shpc.h                              |    4 +-
 include/hw/pcmcia.h                                |    6 -
 include/hw/platform-bus.h                          |   57 +
 include/hw/ppc/mac_dbdma.h                         |    5 +
 include/hw/ppc/ppc.h                               |    2 +
 include/hw/ppc/spapr.h                             |  106 +-
 include/hw/ppc/xics.h                              |   11 +-
 include/hw/qdev-core.h                             |   59 +-
 include/hw/qdev-properties.h                       |   14 +-
 include/hw/s390x/adapter.h                         |   23 +
 include/hw/s390x/s390_flic.h                       |   65 +-
 include/hw/s390x/sclp.h                            |   22 +-
 include/hw/scsi/esp.h                              |    1 +
 include/hw/scsi/scsi.h                             |   51 +-
 include/hw/sd.h                                    |    2 +-
 include/hw/ssi.h                                   |    2 +
 include/hw/sysbus.h                                |   19 +-
 include/hw/timer/allwinner-a10-pit.h               |   13 +-
 include/hw/tricore/tricore.h                       |   11 +
 include/hw/usb.h                                   |   20 +-
 include/hw/usb/ehci-regs.h                         |   82 +
 include/hw/usb/uhci-regs.h                         |   40 +
 include/hw/virtio/dataplane/vring.h                |    5 +-
 include/hw/virtio/vhost-backend.h                  |   40 +
 include/hw/virtio/vhost.h                          |   14 +-
 include/hw/virtio/virtio-access.h                  |  170 +
 include/hw/virtio/virtio-blk.h                     |   57 +-
 include/hw/virtio/virtio-net.h                     |   18 +-
 include/hw/virtio/virtio-scsi.h                    |   98 +-
 include/hw/virtio/virtio-serial.h                  |    2 +
 include/hw/virtio/virtio.h                         |   20 +-
 include/hw/virtio/virtio_ring.h                    |  167 +
 include/hw/xen/xen.h                               |    1 -
 include/hw/xen/xen_common.h                        |   15 +
 include/libdecnumber/dconfig.h                     |   40 +
 include/libdecnumber/decContext.h                  |  257 +
 include/libdecnumber/decDPD.h                      | 1214 +++
 include/libdecnumber/decNumber.h                   |  202 +
 include/libdecnumber/decNumberLocal.h              |  665 ++
 include/libdecnumber/dpd/decimal128.h              |  100 +
 include/libdecnumber/dpd/decimal128Local.h         |   47 +
 include/libdecnumber/dpd/decimal32.h               |   98 +
 include/libdecnumber/dpd/decimal64.h               |  100 +
 include/migration/migration.h                      |    4 +-
 include/migration/qemu-file.h                      |   32 +
 include/migration/vmstate.h                        |   36 +-
 include/monitor/monitor.h                          |   48 +-
 include/net/net.h                                  |    6 +-
 include/net/vhost-user.h                           |   17 +
 include/net/vhost_net.h                            |   11 +-
 include/qapi/error.h                               |   31 +-
 include/qapi/qmp-event.h                           |   27 +
 include/qapi/qmp/dispatch.h                        |    2 +-
 include/qapi/qmp/qdict.h                           |    3 +
 include/qapi/qmp/qerror.h                          |   91 -
 include/qapi/util.h                                |   17 +
 include/qapi/visitor-impl.h                        |   10 +-
 include/qapi/visitor.h                             |    7 +-
 include/qemu-common.h                              |   34 +-
 include/qemu/aes.h                                 |   23 +
 include/qemu/bitmap.h                              |   19 +-
 include/qemu/bitops.h                              |   16 +-
 include/qemu/bswap.h                               |   45 +-
 include/qemu/cache-utils.h                         |   44 -
 include/qemu/compiler.h                            |    6 +
 include/qemu/config-file.h                         |    2 +
 include/qemu/error-report.h                        |    2 +-
 include/qemu/int128.h                              |    9 +-
 include/qemu/main-loop.h                           |    2 +-
 include/qemu/option.h                              |   53 +-
 include/qemu/option_int.h                          |    4 +-
 include/qemu/osdep.h                               |   42 +-
 include/qemu/range.h                               |   72 +
 include/qemu/sockets.h                             |    5 +-
 include/qemu/throttle.h                            |   10 +
 include/qemu/timer.h                               |    2 +
 include/qemu/typedefs.h                            |    5 +
 include/qom/cpu.h                                  |   36 +-
 include/qom/object.h                               |   96 +-
 include/sysemu/accel.h                             |   62 +
 include/sysemu/arch_init.h                         |   35 +-
 include/sysemu/balloon.h                           |    2 -
 include/sysemu/block-backend.h                     |  142 +
 include/sysemu/blockdev.h                          |   22 +-
 include/sysemu/char.h                              |   77 +-
 include/sysemu/cpus.h                              |    2 +-
 include/sysemu/dma.h                               |   31 +-
 include/sysemu/dump-arch.h                         |   28 +
 include/sysemu/dump.h                              |   53 +-
 include/sysemu/hostmem.h                           |   68 +
 include/sysemu/kvm.h                               |   80 +-
 include/sysemu/os-posix.h                          |    2 +
 include/sysemu/os-win32.h                          |    2 +
 include/sysemu/qtest.h                             |    1 -
 include/sysemu/sysemu.h                            |   38 +-
 include/sysemu/tpm.h                               |    7 +
 include/trace-tcg.h                                |    7 +
 include/trace.h                                    |    1 +
 include/ui/console.h                               |   36 +-
 include/ui/input.h                                 |   10 +
 include/ui/qemu-pixman.h                           |    4 +
 include/ui/spice-display.h                         |   14 +
 iohandler.c                                        |    1 +
 ioport.c                                           |   11 +-
 iothread.c                                         |   16 +-
 kvm-all.c                                          |  222 +-
 kvm-stub.c                                         |   16 +-
 libcacard/Makefile                                 |   11 +-
 libcacard/cac.c                                    |   62 +-
 libcacard/card_7816.c                              |   28 +-
 libcacard/event.c                                  |   25 +-
 libcacard/vcard.c                                  |   43 +-
 libcacard/vcard_emul.h                             |    1 +
 libcacard/vcard_emul_nss.c                         |   66 +-
 libcacard/vreader.c                                |   59 +-
 libcacard/vscclient.c                              |   90 +-
 libdecnumber/decContext.c                          |  433 ++
 libdecnumber/decNumber.c                           | 8195 ++++++++++++++++++++
 libdecnumber/dpd/decimal128.c                      |  564 ++
 libdecnumber/dpd/decimal128Local.h                 |   42 +
 libdecnumber/dpd/decimal32.c                       |  489 ++
 libdecnumber/dpd/decimal64.c                       |  850 ++
 linux-headers/asm-arm/kvm.h                        |   12 +-
 linux-headers/asm-arm64/kvm.h                      |   15 +-
 linux-headers/asm-mips/kvm.h                       |   35 +
 linux-headers/asm-mips/kvm_para.h                  |    6 +-
 linux-headers/asm-powerpc/kvm.h                    |   10 +-
 linux-headers/asm-powerpc/kvm_para.h               |    6 +
 linux-headers/asm-s390/kvm.h                       |   62 +
 linux-headers/asm-x86/kvm.h                        |    3 +
 linux-headers/linux/kvm.h                          |   75 +-
 linux-headers/linux/kvm_para.h                     |    3 +
 linux-headers/linux/psci.h                         |   90 +
 linux-headers/linux/vfio.h                         |   43 +
 linux-user/Makefile.objs                           |    2 +-
 linux-user/aarch64/syscall.h                       |    3 +
 linux-user/alpha/syscall.h                         |    3 +
 linux-user/arm/syscall.h                           |    5 +
 linux-user/arm/syscall_nr.h                        |    2 +-
 linux-user/cpu-uname.c                             |   72 -
 linux-user/cpu-uname.h                             |    1 -
 linux-user/cris/syscall.h                          |    3 +
 linux-user/elfload.c                               |  126 +-
 linux-user/i386/syscall.h                          |    3 +
 linux-user/ioctls.h                                |    5 +-
 linux-user/m68k/syscall.h                          |    4 +
 linux-user/main.c                                  |  113 +-
 linux-user/microblaze/syscall.h                    |    3 +
 linux-user/mips/syscall.h                          |    3 +
 linux-user/mips/target_cpu.h                       |    2 +-
 linux-user/mips64/syscall.h                        |    3 +
 linux-user/openrisc/syscall.h                      |    4 +
 linux-user/ppc/syscall.h                           |    8 +
 linux-user/ppc/target_cpu.h                        |   10 +
 linux-user/qemu.h                                  |   13 +-
 linux-user/s390x/syscall.h                         |    3 +
 linux-user/sh4/syscall.h                           |    4 +
 linux-user/signal.c                                | 1421 ++--
 linux-user/socket.h                                |    5 +
 linux-user/sparc/syscall.h                         |    3 +
 linux-user/sparc64/syscall.h                       |    3 +
 linux-user/strace.list                             |   15 +
 linux-user/syscall.c                               |  819 ++-
 linux-user/syscall_defs.h                          |   38 +-
 linux-user/syscall_types.h                         |    2 +-
 linux-user/uname.c                                 |  169 +
 linux-user/uname.h                                 |   10 +
 linux-user/unicore32/syscall.h                     |    4 +
 linux-user/x86_64/syscall.h                        |    3 +
 main-loop.c                                        |   35 +-
 memory.c                                           |  414 +-
 memory_mapping.c                                   |    3 +-
 migration-rdma.c                                   |    5 +-
 migration-tcp.c                                    |   21 +-
 migration-unix.c                                   |   21 +-
 migration.c                                        |   16 +-
 monitor.c                                          |  798 ++-
 nbd.c                                              |  323 +-
 net/Makefile.objs                                  |    3 +-
 net/clients.h                                      |    5 +
 net/hub.c                                          |    1 +
 net/l2tpv3.c                                       |  756 ++
 net/net.c                                          |  107 +-
 net/queue.c                                        |    3 +
 net/slirp.c                                        |   22 +-
 net/socket.c                                       |   13 +-
 net/tap.c                                          |   36 +-
 net/tap_int.h                                      |    3 -
 net/vhost-user.c                                   |  258 +
 numa.c                                             |  436 ++
 os-posix.c                                         |  107 +-
 os-win32.c                                         |    5 -
 page_cache.c                                       |    1 +
 pc-bios/QEMU,tcx.bin                               |  Bin 1410 -> 1402 bytes
 pc-bios/README                                     |    7 +-
 pc-bios/bios-256k.bin                              |  Bin 262144 -> 262144 
bytes
 pc-bios/bios.bin                                   |  Bin 131072 -> 131072 
bytes
 pc-bios/efi-e1000.rom                              |  Bin 173568 -> 194560 
bytes
 pc-bios/efi-eepro100.rom                           |  Bin 174592 -> 196096 
bytes
 pc-bios/efi-ne2k_pci.rom                           |  Bin 173056 -> 194560 
bytes
 pc-bios/efi-pcnet.rom                              |  Bin 173056 -> 194560 
bytes
 pc-bios/efi-rtl8139.rom                            |  Bin 176640 -> 198144 
bytes
 pc-bios/efi-virtio.rom                             |  Bin 171008 -> 192000 
bytes
 pc-bios/linuxboot.bin                              |  Bin 1024 -> 1024 bytes
 pc-bios/openbios-ppc                               |  Bin 734008 -> 746588 
bytes
 pc-bios/openbios-sparc32                           |  Bin 381512 -> 381512 
bytes
 pc-bios/openbios-sparc64                           |  Bin 1598376 -> 1616768 
bytes
 pc-bios/optionrom/linuxboot.S                      |   47 +-
 pc-bios/optionrom/optionrom.h                      |   21 +-
 pc-bios/petalogix-s3adsp1800.dtb                   |  Bin 8259 -> 8259 bytes
 pc-bios/ppc_rom.bin                                |  Bin 1048576 -> 1048576 
bytes
 pc-bios/qemu_logo.svg                              | 1010 +++
 pc-bios/s390-ccw.img                               |  Bin 9336 -> 17752 bytes
 pc-bios/s390-ccw/bootmap.c                         |  536 +-
 pc-bios/s390-ccw/bootmap.h                         |  344 +
 pc-bios/s390-ccw/main.c                            |   30 +-
 pc-bios/s390-ccw/s390-ccw.h                        |   39 +-
 pc-bios/s390-ccw/sclp-ascii.c                      |    4 +-
 pc-bios/s390-ccw/virtio.c                          |  148 +-
 pc-bios/s390-ccw/virtio.h                          |   50 +-
 pc-bios/slof.bin                                   |  Bin 921720 -> 923896 
bytes
 pc-bios/u-boot.e500                                |  Bin 0 -> 330260 bytes
 pc-bios/vgabios-cirrus.bin                         |  Bin 37376 -> 37376 bytes
 pc-bios/vgabios-qxl.bin                            |  Bin 37376 -> 37376 bytes
 pc-bios/vgabios-stdvga.bin                         |  Bin 37376 -> 37376 bytes
 pc-bios/vgabios-vmware.bin                         |  Bin 37376 -> 37376 bytes
 pc-bios/vgabios.bin                                |  Bin 37376 -> 37376 bytes
 pixman                                             |    2 +-
 po/Makefile                                        |   13 +-
 po/de_DE.po                                        |   55 +-
 po/fr_FR.po                                        |   56 +-
 po/hu.po                                           |    2 +-
 po/it.po                                           |   65 +-
 po/tr.po                                           |    2 +-
 po/zh_CN.po                                        |   86 +
 qapi-schema.json                                   | 2127 ++----
 qapi/Makefile.objs                                 |    3 +-
 qapi/block-core.json                               | 1828 +++++
 qapi/block.json                                    |  180 +
 qapi/common.json                                   |  104 +
 qapi/event.json                                    |  332 +
 qapi/opts-visitor.c                                |   26 +-
 qapi/qapi-dealloc-visitor.c                        |   26 +
 qapi/qapi-util.c                                   |   34 +
 qapi/qapi-visit-core.c                             |  266 +-
 qapi/qmp-dispatch.c                                |   27 +-
 qapi/qmp-event.c                                   |   74 +
 qapi/qmp-input-visitor.c                           |    8 +-
 qapi/qmp-output-visitor.c                          |    6 +
 qapi/string-input-visitor.c                        |  207 +-
 qapi/string-output-visitor.c                       |  235 +-
 qapi/trace.json                                    |   65 +
 qdev-monitor.c                                     |  165 +-
 qemu-bridge-helper.c                               |    9 +-
 qemu-char.c                                        | 1166 ++-
 qemu-coroutine-io.c                                |    4 +-
 qemu-coroutine-sleep.c                             |   12 -
 qemu-coroutine.c                                   |   26 +-
 qemu-doc.texi                                      |   61 +-
 qemu-file-stdio.c                                  |  194 +
 qemu-file-unix.c                                   |  223 +
 qemu-file.c                                        |  896 ++-
 qemu-img-cmds.hx                                   |   24 +-
 qemu-img.c                                         |  786 ++-
 qemu-img.texi                                      |   93 +-
 qemu-io-cmds.c                                     |   30 +-
 qemu-io.c                                          |   70 +-
 qemu-nbd.c                                         |  127 +-
 qemu-nbd.texi                                      |    2 +-
 qemu-options.hx                                    |  308 +-
 qemu-seccomp.c                                     |   12 +-
 qemu-timer.c                                       |   14 +-
 qga/channel-posix.c                                |    2 +-
 qga/commands-posix.c                               |  724 ++-
 qga/commands-win32.c                               |  170 +-
 qga/commands.c                                     |    4 +-
 qga/guest-agent-core.h                             |    1 +
 qga/main.c                                         |    8 +-
 qga/qapi-schema.json                               |  110 +-
 qga/vss-win32.c                                    |    6 +-
 qga/vss-win32.h                                    |    2 +-
 qmp-commands.hx                                    |  331 +-
 qmp.c                                              |  220 +-
 qobject/json-lexer.c                               |    4 +-
 qobject/json-parser.c                              |   17 +-
 qobject/qdict.c                                    |   32 +
 qom/cpu.c                                          |   29 +-
 qom/object.c                                       |  290 +-
 qtest.c                                            |   79 +-
 roms/Makefile                                      |    9 +
 roms/SLOF                                          |    2 +-
 roms/config.ipxe.general.h                         |    4 +-
 roms/ipxe                                          |    2 +-
 roms/openbios                                      |    2 +-
 roms/openhackware                                  |    2 +-
 roms/seabios                                       |    2 +-
 roms/u-boot                                        |    1 +
 rules.mak                                          |  293 +-
 savevm.c                                           |  166 +-
 scripts/acpi_extract.py                            |   23 +-
 scripts/checkpatch.pl                              |    8 +-
 scripts/cleanup-trace-events.pl                    |    2 +-
 scripts/coverity-model.c                           |  183 +
 scripts/get_maintainer.pl                          |   28 +-
 scripts/kvm/kvm_stat                               |  210 +-
 scripts/kvm/vmxcap                                 |   10 +-
 scripts/qapi-commands.py                           |  108 +-
 scripts/qapi-event.py                              |  368 +
 scripts/qapi-types.py                              |   11 +-
 scripts/qapi-visit.py                              |  270 +-
 scripts/qapi.py                                    |  114 +-
 scripts/qtest                                      |    5 -
 scripts/simpletrace.py                             |   64 +-
 scripts/tracetool.py                               |   43 +-
 scripts/tracetool/__init__.py                      |  176 +-
 scripts/tracetool/backend/__init__.py              |   76 +-
 scripts/tracetool/backend/dtrace.py                |   81 +-
 scripts/tracetool/backend/events.py                |   23 -
 scripts/tracetool/backend/ftrace.py                |   56 +-
 scripts/tracetool/backend/simple.py                |  132 +-
 scripts/tracetool/backend/stderr.py                |   43 +-
 scripts/tracetool/backend/ust.py                   |   65 +-
 scripts/tracetool/format/__init__.py               |   50 +-
 scripts/tracetool/format/c.py                      |   16 +-
 scripts/tracetool/format/d.py                      |   30 +-
 scripts/tracetool/format/events_c.py               |   15 +-
 scripts/tracetool/format/events_h.py               |   20 +-
 scripts/tracetool/format/h.py                      |   30 +-
 scripts/tracetool/format/simpletrace_stap.py       |   71 +
 scripts/tracetool/format/stap.py                   |   47 +-
 scripts/tracetool/format/tcg_h.py                  |   57 +
 scripts/tracetool/format/tcg_helper_c.py           |   50 +
 scripts/tracetool/format/tcg_helper_h.py           |   50 +
 scripts/tracetool/format/tcg_helper_wrapper_h.py   |   70 +
 scripts/tracetool/format/ust_events_c.py           |    7 +-
 scripts/tracetool/format/ust_events_h.py           |   49 +-
 scripts/tracetool/transform.py                     |  166 +
 scripts/update-linux-headers.sh                    |    3 +-
 scripts/vmstate-static-checker.py                  |  422 +
 slirp/arp_table.c                                  |   10 +-
 slirp/misc.c                                       |   33 +-
 slirp/misc.h                                       |    4 -
 slirp/slirp.c                                      |   15 +-
 slirp/slirp.h                                      |    2 -
 slirp/slirp_config.h                               |    3 -
 slirp/tftp.h                                       |    2 +-
 slirp/udp.c                                        |    2 +-
 softmmu_template.h                                 |  574 ++
 spice-qemu-char.c                                  |   10 +-
 stubs/Makefile.objs                                |   14 +-
 stubs/arch-query-cpu-def.c                         |    2 +-
 stubs/bdrv-commit-all.c                            |    7 +
 stubs/chr-baum-init.c                              |    7 +
 stubs/chr-msmouse.c                                |    7 +
 stubs/chr-testdev.c                                |    7 +
 stubs/dump.c                                       |    2 +-
 stubs/fdset-remove-fd.c                            |    3 +-
 stubs/get-next-serial.c                            |    3 +
 stubs/is-daemonized.c                              |    9 +
 stubs/machine-init-done.c                          |    6 +
 stubs/mon-print-filename.c                         |    6 -
 stubs/mon-protocol-event.c                         |    6 -
 stubs/monitor-init.c                               |    6 +
 stubs/notify-event.c                               |    6 +
 stubs/qemu-chr-open-spice.c                        |   14 +
 stubs/qmp_pc_dimm_device_list.c                    |    7 +
 stubs/vc-init.c                                    |    7 +
 stubs/vm-stop.c                                    |    7 +-
 target-alpha/cpu-qom.h                             |    3 +
 target-alpha/cpu.c                                 |    2 +
 target-alpha/cpu.h                                 |    1 +
 target-alpha/fpu_helper.c                          |    9 +-
 target-alpha/helper.c                              |   46 +-
 target-alpha/helper.h                              |    5 +-
 target-alpha/int_helper.c                          |    2 +-
 target-alpha/machine.c                             |    2 -
 target-alpha/mem_helper.c                          |   29 +-
 target-alpha/sys_helper.c                          |    2 +-
 target-alpha/translate.c                           | 2372 +++----
 target-arm/Makefile.objs                           |    1 +
 target-arm/arm_ldst.h                              |   48 +
 target-arm/cpu-qom.h                               |   32 +-
 target-arm/cpu.c                                   |  235 +-
 target-arm/cpu.h                                   |  499 +-
 target-arm/cpu64.c                                 |  135 +-
 target-arm/crypto_helper.c                         |  338 +-
 target-arm/gdbstub64.c                             |    2 -
 target-arm/helper-a64.c                            |  153 +-
 target-arm/helper-a64.h                            |    4 +-
 target-arm/helper.c                                | 1991 ++++-
 target-arm/helper.h                                |   28 +-
 target-arm/internals.h                             |  381 +
 target-arm/iwmmxt_helper.c                         |   11 +-
 target-arm/kvm-consts.h                            |   89 +-
 target-arm/kvm.c                                   |   11 +
 target-arm/kvm32.c                                 |   58 +-
 target-arm/kvm64.c                                 |   92 +-
 target-arm/kvm_arm.h                               |   20 +
 target-arm/machine.c                               |   27 +-
 target-arm/neon_helper.c                           |   32 +-
 target-arm/op_helper.c                             |  461 ++-
 target-arm/psci.c                                  |  242 +
 target-arm/translate-a64.c                         |  817 ++-
 target-arm/translate.c                             | 1084 ++-
 target-arm/translate.h                             |   46 +-
 target-cris/cpu-qom.h                              |    1 +
 target-cris/cpu.c                                  |    2 +
 target-cris/helper.c                               |   32 +
 target-cris/helper.h                               |    4 -
 target-cris/op_helper.c                            |   19 +-
 target-cris/translate.c                            |   57 +-
 target-cris/translate_v10.c                        |    2 +-
 target-i386/cc_helper.c                            |    2 +-
 target-i386/cpu-qom.h                              |   12 +-
 target-i386/cpu.c                                  |  785 ++-
 target-i386/cpu.h                                  |  188 +-
 target-i386/excp_helper.c                          |    2 +-
 target-i386/fpu_helper.c                           |   28 +-
 target-i386/gdbstub.c                              |    6 +-
 target-i386/helper.c                               |  437 +-
 target-i386/helper.h                               |    4 -
 target-i386/int_helper.c                           |    2 +-
 target-i386/kvm.c                                  |  207 +-
 target-i386/kvm_i386.h                             |    2 +
 target-i386/machine.c                              |  158 +-
 target-i386/mem_helper.c                           |   25 +-
 target-i386/misc_helper.c                          |   49 +-
 target-i386/ops_sse.h                              |   32 +-
 target-i386/seg_helper.c                           |  257 +-
 target-i386/smm_helper.c                           |   52 +-
 target-i386/svm_helper.c                           |   20 +-
 target-i386/translate.c                            |   60 +-
 target-lm32/Makefile.objs                          |    1 +
 target-lm32/README                                 |   15 +-
 target-lm32/cpu-qom.h                              |    1 +
 target-lm32/cpu.c                                  |    4 +-
 target-lm32/cpu.h                                  |    3 +-
 target-lm32/helper.c                               |   32 +-
 target-lm32/helper.h                               |    4 -
 target-lm32/lm32-semi.c                            |  215 +
 target-lm32/machine.c                              |    6 +-
 target-lm32/op_helper.c                            |   16 +-
 target-lm32/translate.c                            |    9 +-
 target-m68k/cpu-qom.h                              |    4 +
 target-m68k/cpu.c                                  |    4 +
 target-m68k/cpu.h                                  |    1 -
 target-m68k/helper.c                               |   22 +-
 target-m68k/helper.h                               |    4 -
 target-m68k/op_helper.c                            |   41 +-
 target-m68k/translate.c                            |    9 +-
 target-microblaze/cpu-qom.h                        |    1 +
 target-microblaze/cpu.c                            |    3 +
 target-microblaze/helper.c                         |   16 +
 target-microblaze/helper.h                         |    4 -
 target-microblaze/op_helper.c                      |   14 +-
 target-microblaze/translate.c                      |   21 +-
 target-mips/Makefile.objs                          |    3 +-
 target-mips/cpu-qom.h                              |    3 +
 target-mips/cpu.c                                  |   11 +
 target-mips/cpu.h                                  |  155 +-
 target-mips/dsp_helper.c                           |   28 +-
 target-mips/gdbstub.c                              |    7 -
 target-mips/helper.c                               |  182 +-
 target-mips/helper.h                               |  247 +-
 target-mips/kvm.c                                  |  690 ++
 target-mips/kvm_mips.h                             |   26 +
 target-mips/lmi_helper.c                           |    2 +-
 target-mips/machine.c                              |   42 +-
 target-mips/mips-defs.h                            |   29 +-
 target-mips/msa_helper.c                           | 3436 ++++++++
 target-mips/op_helper.c                            |  564 ++-
 target-mips/translate.c                            | 6289 ++++++++++++----
 target-mips/translate_init.c                       |   85 +-
 target-moxie/helper.c                              |   18 +-
 target-moxie/helper.h                              |    4 -
 target-moxie/machine.c                             |    3 +-
 target-moxie/translate.c                           |    6 +-
 target-openrisc/cpu.c                              |    1 +
 target-openrisc/cpu.h                              |    1 +
 target-openrisc/exception_helper.c                 |    2 +-
 target-openrisc/fpu_helper.c                       |    2 +-
 target-openrisc/helper.h                           |    4 -
 target-openrisc/int_helper.c                       |    2 +-
 target-openrisc/interrupt.c                        |   20 +
 target-openrisc/interrupt_helper.c                 |    2 +-
 target-openrisc/machine.c                          |    2 -
 target-openrisc/mmu_helper.c                       |   15 +-
 target-openrisc/sys_helper.c                       |    2 +-
 target-openrisc/translate.c                        |   13 +-
 target-ppc/Makefile.objs                           |    1 +
 target-ppc/arch_dump.c                             |  107 +-
 target-ppc/cpu-models.c                            |   55 +-
 target-ppc/cpu-models.h                            |   23 +-
 target-ppc/cpu-qom.h                               |   28 +-
 target-ppc/cpu.h                                   |  173 +-
 target-ppc/dfp_helper.c                            | 1316 ++++
 target-ppc/excp_helper.c                           |   42 +-
 target-ppc/fpu_helper.c                            |   11 +-
 target-ppc/gdbstub.c                               |  251 +-
 target-ppc/helper.h                                |   64 +-
 target-ppc/int_helper.c                            |  341 +-
 target-ppc/kvm.c                                   |  535 ++-
 target-ppc/kvm_ppc.h                               |   42 +-
 target-ppc/machine.c                               |   79 +-
 target-ppc/mem_helper.c                            |   33 +-
 target-ppc/misc_helper.c                           |   41 +-
 target-ppc/mmu-hash32.c                            |    2 +-
 target-ppc/mmu-hash64.c                            |    2 +-
 target-ppc/mmu_helper.c                            |   32 +-
 target-ppc/timebase_helper.c                       |    2 +-
 target-ppc/translate.c                             | 1629 ++--
 target-ppc/translate_init.c                        | 2203 ++++--
 target-s390x/Makefile.objs                         |    2 +-
 target-s390x/cc_helper.c                           |    2 +-
 target-s390x/cpu-qom.h                             |    7 +
 target-s390x/cpu.c                                 |  127 +-
 target-s390x/cpu.h                                 |  172 +-
 target-s390x/fpu_helper.c                          |    7 +-
 target-s390x/gdbstub.c                             |  109 +-
 target-s390x/helper.c                              |  133 +-
 target-s390x/helper.h                              |    4 -
 target-s390x/insn-data.def                         |    6 +-
 target-s390x/int_helper.c                          |    2 +-
 target-s390x/interrupt.c                           |   56 +-
 target-s390x/ioinst.h                              |   10 +
 target-s390x/kvm.c                                 |  610 ++-
 target-s390x/machine.c                             |   76 +
 target-s390x/mem_helper.c                          |   18 +-
 target-s390x/misc_helper.c                         |   55 +-
 target-s390x/translate.c                           |   25 +-
 target-sh4/cpu-qom.h                               |    1 +
 target-sh4/cpu.c                                   |    1 +
 target-sh4/helper.c                                |    9 +
 target-sh4/helper.h                                |    4 -
 target-sh4/op_helper.c                             |   18 +-
 target-sh4/translate.c                             |    9 +-
 target-sparc/cc_helper.c                           |    2 +-
 target-sparc/cpu-qom.h                             |    3 +
 target-sparc/cpu.c                                 |   22 +
 target-sparc/cpu.h                                 |    2 +
 target-sparc/fop_helper.c                          |    2 +-
 target-sparc/helper.c                              |    2 +-
 target-sparc/helper.h                              |    4 -
 target-sparc/int64_helper.c                        |    2 +-
 target-sparc/ldst_helper.c                         |   49 +-
 target-sparc/translate.c                           |    9 +-
 target-sparc/vis_helper.c                          |    2 +-
 target-sparc/win_helper.c                          |    2 +-
 target-tricore/Makefile.objs                       |    1 +
 target-tricore/cpu-qom.h                           |   70 +
 target-tricore/cpu.c                               |  191 +
 target-tricore/cpu.h                               |  403 +
 target-tricore/helper.c                            |  140 +
 target-tricore/helper.h                            |   32 +
 target-tricore/op_helper.c                         |  468 ++
 target-tricore/translate.c                         | 2568 ++++++
 target-tricore/tricore-defs.h                      |   28 +
 target-tricore/tricore-opcodes.h                   | 1408 ++++
 target-unicore32/cpu-qom.h                         |    1 +
 target-unicore32/cpu.c                             |    1 +
 target-unicore32/helper.c                          |   17 +-
 target-unicore32/helper.h                          |    3 -
 target-unicore32/op_helper.c                       |   19 +-
 target-unicore32/translate.c                       |   37 +-
 target-unicore32/ucf64_helper.c                    |   24 +-
 target-xtensa/core-dc232b.c                        |    2 +-
 target-xtensa/core-dc233c.c                        |    2 +-
 target-xtensa/core-fsf.c                           |    2 +-
 target-xtensa/cpu-qom.h                            |    3 +
 target-xtensa/cpu.c                                |    5 +-
 target-xtensa/cpu.h                                |   10 +-
 target-xtensa/helper.c                             |   15 +-
 target-xtensa/helper.h                             |    4 -
 target-xtensa/import_core.sh                       |   53 +
 target-xtensa/op_helper.c                          |   36 +-
 target-xtensa/overlay_tool.h                       |   32 +-
 target-xtensa/translate.c                          |    9 +-
 target-xtensa/xtensa-semi.c                        |    2 +-
 tcg-runtime.c                                      |   40 +-
 tcg/README                                         |   23 +-
 tcg/aarch64/tcg-target.c                           | 1279 ++--
 tcg/aarch64/tcg-target.h                           |   37 +-
 tcg/arm/tcg-target.c                               |  204 +-
 tcg/arm/tcg-target.h                               |    5 +-
 tcg/i386/tcg-target.c                              |  128 +-
 tcg/i386/tcg-target.h                              |    5 +-
 tcg/ia64/tcg-target.c                              |  721 +-
 tcg/ia64/tcg-target.h                              |    9 +-
 tcg/mips/tcg-target.c                              | 1950 +++---
 tcg/mips/tcg-target.h                              |   20 +-
 tcg/optimize.c                                     |  380 +-
 tcg/ppc/tcg-target.c                               | 3257 +++++---
 tcg/ppc/tcg-target.h                               |  117 +-
 tcg/ppc64/tcg-target.c                             | 2210 ------
 tcg/ppc64/tcg-target.h                             |  132 -
 tcg/s390/tcg-target.c                              |  889 ++-
 tcg/s390/tcg-target.h                              |    5 +-
 tcg/sparc/tcg-target.c                             | 1114 ++--
 tcg/sparc/tcg-target.h                             |   34 +-
 tcg/tcg-be-ldst.h                                  |    9 +-
 tcg/tcg-op.h                                       |  283 +-
 tcg/tcg-opc.h                                      |  124 +-
 tcg/tcg-runtime.h                                  |   30 +-
 tcg/tcg.c                                          |  565 +-
 tcg/tcg.h                                          |  200 +-
 tcg/tci/tcg-target.c                               |  131 +-
 tcg/tci/tcg-target.h                               |   12 +-
 tci.c                                              |  343 +-
 tests/.gitignore                                   |   15 +-
 tests/Makefile                                     |  136 +-
 tests/ac97-test.c                                  |   33 +
 tests/acpi-test-data/pc/DSDT                       |  Bin 4480 -> 3592 bytes
 tests/acpi-test-data/pc/SSDT                       |  Bin 2269 -> 2279 bytes
 tests/acpi-test-data/q35/DSDT                      |  Bin 7378 -> 8182 bytes
 tests/acpi-test-data/q35/SSDT                      |  Bin 550 -> 560 bytes
 tests/acpi-test-data/rebuild-expected-aml.sh       |    6 +-
 tests/acpi-test.c                                  |  674 --
 tests/ahci-test.c                                  | 1561 ++++
 tests/bios-tables-test.c                           |  807 ++
 tests/blockdev-test.c                              |   59 -
 tests/check-qdict.c                                |   87 +
 tests/check-qjson.c                                |    7 +
 tests/display-vga-test.c                           |   52 +
 tests/drive_del-test.c                             |  137 +
 tests/e1000-test.c                                 |   33 +-
 tests/es1370-test.c                                |   33 +
 tests/fdc-test.c                                   |    4 +-
 tests/ide-test.c                                   |  101 +-
 tests/image-fuzzer/qcow2/__init__.py               |    1 +
 tests/image-fuzzer/qcow2/fuzz.py                   |  367 +
 tests/image-fuzzer/qcow2/layout.py                 |  612 ++
 tests/image-fuzzer/runner.py                       |  437 ++
 tests/intel-hda-test.c                             |   45 +
 tests/ioh3420-test.c                               |   34 +
 tests/libqos/malloc-pc.c                           |  283 +-
 tests/libqos/malloc-pc.h                           |    9 +
 tests/libqos/malloc.h                              |    2 +-
 tests/libqos/pci-pc.c                              |   73 +-
 tests/libqos/pci-pc.h                              |    1 +
 tests/libqos/pci.c                                 |  123 +-
 tests/libqos/pci.h                                 |   17 +-
 tests/libqos/usb.c                                 |   71 +
 tests/libqos/usb.h                                 |   17 +
 tests/libqos/virtio-pci.c                          |  343 +
 tests/libqos/virtio-pci.h                          |   61 +
 tests/libqos/virtio.c                              |  281 +
 tests/libqos/virtio.h                              |  187 +
 tests/libqtest.c                                   |  128 +-
 tests/libqtest.h                                   |   32 +
 tests/qapi-schema/duplicate-key.err                |    2 +-
 tests/qapi-schema/event-nest-struct.err            |    1 +
 tests/qapi-schema/event-nest-struct.exit           |    1 +
 tests/qapi-schema/event-nest-struct.json           |    2 +
 .../qapi-schema/flat-union-invalid-branch-key.err  |    2 +-
 .../flat-union-invalid-discriminator.err           |    2 +-
 tests/qapi-schema/flat-union-no-base.err           |    2 +-
 .../flat-union-string-discriminator.err            |    2 +-
 tests/qapi-schema/funny-char.err                   |    2 +-
 tests/qapi-schema/include-before-err.err           |    1 +
 tests/qapi-schema/include-before-err.exit          |    1 +
 tests/qapi-schema/include-before-err.json          |    2 +
 tests/qapi-schema/include-cycle-b.json             |    1 +
 tests/qapi-schema/include-cycle-c.json             |    1 +
 tests/qapi-schema/include-cycle.err                |    3 +
 tests/qapi-schema/include-cycle.exit               |    1 +
 tests/qapi-schema/include-cycle.json               |    1 +
 tests/qapi-schema/include-format-err.err           |    1 +
 tests/qapi-schema/include-format-err.exit          |    1 +
 tests/qapi-schema/include-format-err.json          |    2 +
 tests/qapi-schema/include-nested-err.err           |    2 +
 tests/qapi-schema/include-nested-err.exit          |    1 +
 tests/qapi-schema/include-nested-err.json          |    1 +
 tests/qapi-schema/include-no-file.err              |    1 +
 tests/qapi-schema/include-no-file.exit             |    1 +
 tests/qapi-schema/include-no-file.json             |    1 +
 tests/qapi-schema/include-non-file.err             |    1 +
 tests/qapi-schema/include-non-file.exit            |    1 +
 tests/qapi-schema/include-non-file.json            |    1 +
 tests/qapi-schema/include-relpath-sub.json         |    2 +
 tests/qapi-schema/include-relpath.exit             |    1 +
 tests/qapi-schema/include-relpath.json             |    1 +
 tests/qapi-schema/include-relpath.out              |    3 +
 tests/qapi-schema/include-repetition-sub.json      |    2 +
 tests/qapi-schema/include-repetition.exit          |    1 +
 tests/qapi-schema/include-repetition.json          |    3 +
 tests/qapi-schema/include-repetition.out           |    3 +
 tests/qapi-schema/include-self-cycle.err           |    1 +
 tests/qapi-schema/include-self-cycle.exit          |    1 +
 tests/qapi-schema/include-self-cycle.json          |    1 +
 tests/qapi-schema/include-simple-sub.json          |    2 +
 tests/qapi-schema/include-simple.exit              |    1 +
 tests/qapi-schema/include-simple.json              |    1 +
 tests/qapi-schema/include-simple.out               |    3 +
 tests/qapi-schema/include/relpath.json             |    1 +
 tests/qapi-schema/missing-colon.err                |    2 +-
 tests/qapi-schema/missing-comma-list.err           |    2 +-
 tests/qapi-schema/missing-comma-object.err         |    2 +-
 tests/qapi-schema/non-objects.err                  |    2 +-
 tests/qapi-schema/qapi-schema-test.json            |   22 +
 tests/qapi-schema/qapi-schema-test.out             |   13 +-
 tests/qapi-schema/quoted-structural-chars.err      |    2 +-
 tests/qapi-schema/test-qapi.py                     |    6 +-
 tests/qapi-schema/trailing-comma-list.err          |    2 +-
 tests/qapi-schema/trailing-comma-object.err        |    2 +-
 tests/qapi-schema/unclosed-list.err                |    2 +-
 tests/qapi-schema/unclosed-object.err              |    2 +-
 tests/qapi-schema/unclosed-string.err              |    2 +-
 tests/qapi-schema/union-invalid-base.err           |    2 +-
 tests/qdev-monitor-test.c                          |   77 -
 tests/qemu-iotests-quick.sh                        |   14 +-
 tests/qemu-iotests/019                             |    2 +-
 tests/qemu-iotests/025                             |    2 +-
 tests/qemu-iotests/028                             |   30 +-
 tests/qemu-iotests/028.out                         |  268 +
 tests/qemu-iotests/030                             |   52 +-
 tests/qemu-iotests/031                             |    8 +-
 tests/qemu-iotests/036                             |   58 +-
 tests/qemu-iotests/036.out                         |   35 +
 tests/qemu-iotests/039                             |   38 +-
 tests/qemu-iotests/039.out                         |   13 +-
 tests/qemu-iotests/040                             |    4 +-
 tests/qemu-iotests/041                             |  238 +-
 tests/qemu-iotests/041.out                         |    4 +-
 tests/qemu-iotests/049.out                         |    4 +-
 tests/qemu-iotests/051                             |   33 +
 tests/qemu-iotests/051.out                         |   71 +-
 tests/qemu-iotests/052                             |    5 +-
 tests/qemu-iotests/054                             |    2 +-
 tests/qemu-iotests/056                             |    9 +-
 tests/qemu-iotests/059                             |   11 +
 tests/qemu-iotests/059.out                         |  210 +-
 tests/qemu-iotests/060                             |   84 +-
 tests/qemu-iotests/060.out                         |   86 +-
 tests/qemu-iotests/061                             |   49 +-
 tests/qemu-iotests/061.out                         |   50 +-
 tests/qemu-iotests/065                             |   14 +-
 tests/qemu-iotests/067.out                         |   10 +-
 tests/qemu-iotests/069                             |    2 +-
 tests/qemu-iotests/070                             |    7 +
 tests/qemu-iotests/070.out                         |    6 +
 tests/qemu-iotests/072                             |    2 +-
 tests/qemu-iotests/075                             |    2 +-
 tests/qemu-iotests/076                             |   17 +-
 tests/qemu-iotests/076.out                         |   12 +-
 tests/qemu-iotests/078                             |    2 +-
 tests/qemu-iotests/079                             |    2 +-
 tests/qemu-iotests/080                             |    2 +-
 tests/qemu-iotests/081                             |   17 +-
 tests/qemu-iotests/081.out                         |   12 +-
 tests/qemu-iotests/082                             |   14 +-
 tests/qemu-iotests/082.out                         |  140 +-
 tests/qemu-iotests/083                             |   10 +-
 tests/qemu-iotests/084                             |   32 +-
 tests/qemu-iotests/084.out                         |   24 +-
 tests/qemu-iotests/085                             |   73 +-
 tests/qemu-iotests/086                             |   10 +-
 tests/qemu-iotests/087                             |  102 +
 tests/qemu-iotests/087.out                         |   31 +
 tests/qemu-iotests/088                             |    2 +-
 tests/qemu-iotests/089                             |  129 +
 tests/qemu-iotests/089.out                         |   52 +
 tests/qemu-iotests/090                             |   61 +
 tests/qemu-iotests/090.out                         |   12 +
 tests/qemu-iotests/091                             |  107 +
 tests/qemu-iotests/091.out                         |   28 +
 tests/qemu-iotests/092                             |    2 +-
 tests/qemu-iotests/095                             |   86 +
 tests/qemu-iotests/095.out                         |   23 +
 tests/qemu-iotests/097                             |  122 +
 tests/qemu-iotests/097.out                         |  119 +
 tests/qemu-iotests/098                             |   82 +
 tests/qemu-iotests/098.out                         |   52 +
 tests/qemu-iotests/099                             |  116 +
 tests/qemu-iotests/099.out                         |   20 +
 tests/qemu-iotests/100                             |  134 +
 tests/qemu-iotests/100.out                         |   89 +
 tests/qemu-iotests/101                             |   58 +
 tests/qemu-iotests/101.out                         |   10 +
 tests/qemu-iotests/102                             |   81 +
 tests/qemu-iotests/102.out                         |   21 +
 tests/qemu-iotests/103                             |   99 +
 tests/qemu-iotests/103.out                         |   29 +
 tests/qemu-iotests/104                             |   57 +
 tests/qemu-iotests/104.out                         |   12 +
 tests/qemu-iotests/105                             |   70 +
 tests/qemu-iotests/105.out                         |   21 +
 tests/qemu-iotests/107                             |   61 +
 tests/qemu-iotests/107.out                         |   10 +
 tests/qemu-iotests/108                             |  141 +
 tests/qemu-iotests/108.out                         |  110 +
 tests/qemu-iotests/111                             |   53 +
 tests/qemu-iotests/111.out                         |    3 +
 tests/qemu-iotests/check                           |  110 +-
 tests/qemu-iotests/common                          |   33 +-
 tests/qemu-iotests/common.config                   |    2 +-
 tests/qemu-iotests/common.filter                   |   51 +
 tests/qemu-iotests/common.qemu                     |  200 +
 tests/qemu-iotests/common.rc                       |   36 +-
 tests/qemu-iotests/group                           |   70 +-
 tests/qemu-iotests/iotests.py                      |    9 +-
 tests/qemu-iotests/qcow2.py                        |   15 +-
 .../qemu-iotests/sample_images/fake.parallels.bz2  |  Bin 141 -> 0 bytes
 .../sample_images/iotest-version3.vmdk.bz2         |  Bin 414 -> 4764 bytes
 tests/qemu-iotests/sample_images/parallels-v1.bz2  |  Bin 0 -> 147 bytes
 tests/qemu-iotests/sample_images/parallels-v2.bz2  |  Bin 0 -> 150 bytes
 .../sample_images/test-disk2vhd.vhdx.bz2           |  Bin 0 -> 1424 bytes
 tests/qemu-iotests/socket_scm_helper.c             |    2 +-
 tests/qom-test.c                                   |   21 +-
 tests/tcg/Makefile                                 |    2 -
 tests/tcg/lm32/Makefile                            |   15 +-
 tests/tcg/lm32/crt.S                               |    4 +-
 tests/tcg/lm32/helper.S                            |   65 +
 tests/tcg/lm32/macros.inc                          |   37 +-
 tests/tcg/lm32/test_lb.S                           |    4 +
 tests/tcg/lm32/test_lbu.S                          |    4 +
 tests/tcg/lm32/test_lh.S                           |    4 +
 tests/tcg/lm32/test_lhu.S                          |    4 +
 tests/tcg/lm32/test_lw.S                           |    2 +
 tests/tcg/lm32/test_sb.S                           |    2 +
 tests/tcg/lm32/test_scall.S                        |    4 +
 tests/tcg/lm32/test_sh.S                           |    2 +
 tests/tcg/lm32/test_sw.S                           |    3 +
 tests/tcg/test_path.c                              |    7 -
 tests/tcg/xtensa/Makefile                          |   10 +-
 tests/tcg/xtensa/linker.ld                         |  112 -
 tests/tcg/xtensa/linker.ld.S                       |  130 +
 tests/tcg/xtensa/test_mmu.S                        |  246 +-
 tests/tcg/xtensa/test_windowed.S                   |   51 +
 tests/test-aio.c                                   |   98 +-
 tests/test-bitops.c                                |    1 +
 tests/test-coroutine.c                             |   54 +
 tests/test-qdev-global-props.c                     |  157 +-
 tests/test-qemu-opts.c                             |  441 ++
 tests/test-qmp-event.c                             |  271 +
 tests/test-qmp-input-strict.c                      |  117 +-
 tests/test-qmp-input-visitor.c                     |   99 +-
 tests/test-qmp-output-visitor.c                    |  111 +-
 tests/test-string-input-visitor.c                  |   87 +-
 tests/test-string-output-visitor.c                 |  178 +-
 tests/test-thread-pool.c                           |   52 +-
 tests/test-throttle.c                              |   63 +-
 tests/test-visitor-serialization.c                 |   32 +-
 tests/test-vmstate.c                               |  372 +-
 tests/tmp105-test.c                                |    4 +-
 tests/usb-hcd-ehci-test.c                          |  173 +
 tests/usb-hcd-ohci-test.c                          |   41 +
 tests/usb-hcd-uhci-test.c                          |   96 +
 tests/usb-hcd-xhci-test.c                          |   99 +
 tests/vhost-user-test.c                            |  421 +
 tests/virtio-blk-test.c                            |  664 ++-
 tests/virtio-net-test.c                            |   10 +
 tests/virtio-rng-test.c                            |   10 +
 tests/virtio-scsi-test.c                           |   29 +
 tests/virtio-serial-test.c                         |   27 +
 tests/vmstate-static-checker-data/dump1.json       | 1163 +++
 tests/vmstate-static-checker-data/dump2.json       |  968 +++
 tests/wdt_ib700-test.c                             |  134 +
 thread-pool.c                                      |   69 +-
 trace-events                                       |  277 +-
 trace/Makefile.objs                                |   89 +-
 trace/control-internal.h                           |    4 +-
 trace/control.c                                    |   73 +-
 trace/control.h                                    |   34 +-
 trace/default.c                                    |   40 -
 trace/ftrace.c                                     |   25 +-
 trace/ftrace.h                                     |    5 +
 trace/qmp.c                                        |   75 +
 trace/simple.c                                     |   77 +-
 trace/simple.h                                     |    1 +
 trace/stderr.c                                     |   30 -
 translate-all.c                                    |  159 +-
 ui/Makefile.objs                                   |   10 +-
 ui/cocoa.m                                         |  110 +-
 ui/console.c                                       |  555 +-
 ui/curses.c                                        |   10 +
 ui/gtk.c                                           | 1396 +++--
 ui/input-keymap.c                                  |  198 +
 ui/input-legacy.c                                  |  242 +-
 ui/input.c                                         |  204 +-
 ui/qemu-pixman.c                                   |   90 +
 ui/sdl.c                                           |    5 +-
 ui/sdl2-keymap.h                                   |    7 +-
 ui/sdl2.c                                          |  141 +-
 ui/spice-core.c                                    |  101 +-
 ui/spice-display.c                                 |  149 +-
 ui/vnc-enc-tight.c                                 |   20 +-
 ui/vnc-tls.c                                       |    6 +-
 ui/vnc.c                                           |  387 +-
 ui/vnc.h                                           |   19 +-
 user-exec.c                                        |   28 +-
 util/Makefile.objs                                 |    4 +-
 util/acl.c                                         |   10 +-
 util/aes.c                                         |  343 +
 util/cache-utils.c                                 |   86 -
 util/cutils.c                                      |   13 +-
 util/error.c                                       |   18 +-
 util/fifo8.c                                       |    3 +-
 util/getauxval.c                                   |   59 +-
 util/hbitmap.c                                     |    9 +-
 util/host-utils.c                                  |    2 -
 util/id.c                                          |   28 +
 util/iov.c                                         |   44 +-
 util/module.c                                      |    9 +-
 util/osdep.c                                       |   21 +-
 util/oslib-posix.c                                 |   97 +-
 util/oslib-win32.c                                 |  240 +-
 util/path.c                                        |   10 +-
 util/qemu-config.c                                 |   20 +-
 util/qemu-error.c                                  |   27 +-
 util/qemu-openpty.c                                |    2 +
 util/qemu-option.c                                 |  646 +-
 util/qemu-sockets.c                                |  105 +-
 util/readline.c                                    |   26 +-
 util/throttle.c                                    |   27 +-
 vl.c                                               | 1075 ++--
 vmstate.c                                          |   33 +-
 xbzrle.c                                           |    8 +-
 xen-common-stub.c                                  |    6 -
 xen-common.c                                       |   25 +-
 xen-hvm.c                                          |  142 +-
 1657 files changed, 142979 insertions(+), 50916 deletions(-)

diff --git a/.gitignore b/.gitignore
index de90463..e32a584 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,12 +4,17 @@
 /config-host.*
 /config-target.*
 /config.status
+/config-temp
 /trace/generated-tracers.h
 /trace/generated-tracers.c
 /trace/generated-tracers-dtrace.h
 /trace/generated-tracers.dtrace
 /trace/generated-events.h
 /trace/generated-events.c
+/trace/generated-helpers-wrappers.h
+/trace/generated-helpers.h
+/trace/generated-helpers.c
+/trace/generated-tcg-tracers.h
 /trace/generated-ust-provider.h
 /trace/generated-ust.c
 /libcacard/trace/generated-tracers.c
@@ -18,13 +23,14 @@
 /*-darwin-user
 /*-linux-user
 /*-bsd-user
-libdis*
-libuser
+/libdis*
+/libuser
 /linux-headers/asm
 /qga/qapi-generated
 /qapi-generated
 /qapi-types.[ch]
 /qapi-visit.[ch]
+/qapi-event.[ch]
 /qmp-commands.h
 /qmp-marshal.c
 /qemu-doc.html
@@ -49,19 +55,9 @@ libuser
 /qemu-monitor.texi
 /qmp-commands.txt
 /vscclient
-/test-bitops
-/test-coroutine
-/test-int128
-/test-opts-visitor
-/test-qmp-input-visitor
-/test-qmp-output-visitor
-/test-string-input-visitor
-/test-string-output-visitor
-/test-visitor-serialization
 /fsdev/virtfs-proxy-helper
 /fsdev/virtfs-proxy-helper.1
 /fsdev/virtfs-proxy-helper.pod
-/.gdbinit
 *.a
 *.aux
 *.cp
@@ -90,12 +86,8 @@ libuser
 *.pc
 .libs
 .sdk
-*.swp
-*.orig
-.pc
 *.gcda
 *.gcno
-patches
 /pc-bios/bios-pq/status
 /pc-bios/vgabios-pq/status
 /pc-bios/optionrom/linuxboot.asm
diff --git a/.gitmodules b/.gitmodules
index 444c24a..9da9ede 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -28,3 +28,6 @@
 [submodule "dtc"]
        path = dtc
        url = git://git.qemu-project.org/dtc.git
+[submodule "roms/u-boot"]
+       path = roms/u-boot
+       url = git://git.qemu-project.org/u-boot.git
diff --git a/.travis.yml b/.travis.yml
index 04da973..ad66e5b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -12,7 +12,7 @@ notifications:
     on_failure: always
 env:
   global:
-    - TEST_CMD="make check"
+    - TEST_CMD=""
     - EXTRA_CONFIG=""
     # Development packages, EXTRA_PKGS saved for additional builds
     - CORE_PKGS="libusb-1.0-0-dev libiscsi-dev librados-dev libncurses5-dev"
@@ -20,31 +20,51 @@ env:
     - GUI_PKGS="libgtk-3-dev libvte-2.90-dev libsdl1.2-dev libpng12-dev 
libpixman-1-dev"
     - EXTRA_PKGS=""
   matrix:
+    # Group major targets together with their linux-user counterparts
     - TARGETS=alpha-softmmu,alpha-linux-user
-    - TARGETS=arm-softmmu,arm-linux-user
-    - TARGETS=aarch64-softmmu,aarch64-linux-user
-    - TARGETS=cris-softmmu
-    - TARGETS=i386-softmmu,x86_64-softmmu
-    - TARGETS=lm32-softmmu
-    - TARGETS=m68k-softmmu
-    - TARGETS=microblaze-softmmu,microblazeel-softmmu
+    - 
TARGETS=arm-softmmu,arm-linux-user,armeb-linux-user,aarch64-softmmu,aarch64-linux-user
+    - TARGETS=cris-softmmu,cris-linux-user
+    - TARGETS=i386-softmmu,i386-linux-user,x86_64-softmmu,x86_64-linux-user
+    - TARGETS=m68k-softmmu,m68k-linux-user
+    - 
TARGETS=microblaze-softmmu,microblazeel-softmmu,microblaze-linux-user,microblazeel-linux-user
     - TARGETS=mips-softmmu,mips64-softmmu,mips64el-softmmu,mipsel-softmmu
-    - TARGETS=moxie-softmmu
-    - TARGETS=or32-softmmu,
-    - TARGETS=ppc-softmmu,ppc64-softmmu,ppcemb-softmmu
-    - TARGETS=s390x-softmmu
-    - TARGETS=sh4-softmmu,sh4eb-softmmu
-    - TARGETS=sparc-softmmu,sparc64-softmmu
-    - TARGETS=unicore32-softmmu
-    - TARGETS=xtensa-softmmu,xtensaeb-softmmu
+    - 
TARGETS=mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,mipsn32-linux-user,mipsn32el-linux-user
+    - TARGETS=or32-softmmu,or32-linux-user
+    - 
TARGETS=ppc-softmmu,ppc64-softmmu,ppcemb-softmmu,ppc-linux-user,ppc64-linux-user,ppc64abi32-linux-user,ppc64le-linux-user
+    - TARGETS=s390x-softmmu,s390x-linux-user
+    - TARGETS=sh4-softmmu,sh4eb-softmmu,sh4-linux-user sh4eb-linux-user
+    - 
TARGETS=sparc-softmmu,sparc64-softmmu,sparc-linux-user,sparc32plus-linux-user,sparc64-linux-user
+    - TARGETS=unicore32-softmmu,unicore32-linux-user
+    # Group remaining softmmu only targets into one build
+    - 
TARGETS=lm32-softmmu,moxie-softmmu,tricore-softmmu,xtensa-softmmu,xtensaeb-softmmu
+git:
+  # we want to do this ourselves
+  submodules: false
 before_install:
+  - wget -O - 
http://people.linaro.org/~alex.bennee/qemu-submodule-git-seed.tar.xz | tar -xvJ
   - git submodule update --init --recursive
   - sudo apt-get update -qq
   - sudo apt-get install -qq ${CORE_PKGS} ${NET_PKGS} ${GUI_PKGS} ${EXTRA_PKGS}
-script: "./configure --target-list=${TARGETS} ${EXTRA_CONFIG} && make && 
${TEST_CMD}"
+before_script:
+  - ./configure --target-list=${TARGETS} --enable-debug-tcg ${EXTRA_CONFIG}
+script:
+  - make -j2 && ${TEST_CMD}
 matrix:
   # We manually include a number of additional build for non-standard bits
   include:
+    # Make check target (we only do this once)
+    - env:
+        - TARGETS=alpha-softmmu,arm-softmmu,aarch64-softmmu,cris-softmmu,
+                  i386-softmmu,x86_64-softmmu,m68k-softmmu,microblaze-softmmu,
+                  microblazeel-softmmu,mips-softmmu,mips64-softmmu,
+                  mips64el-softmmu,mipsel-softmmu,or32-softmmu,ppc-softmmu,
+                  ppc64-softmmu,ppcemb-softmmu,s390x-softmmu,sh4-softmmu,
+                  sh4eb-softmmu,sparc-softmmu,sparc64-softmmu,
+                  unicore32-softmmu,unicore32-linux-user,
+                  lm32-softmmu,moxie-softmmu,tricore-softmmu,xtensa-softmmu,
+                  xtensaeb-softmmu
+          TEST_CMD="make check"
+      compiler: gcc
     # Debug related options
     - env: TARGETS=i386-softmmu,x86_64-softmmu
            EXTRA_CONFIG="--enable-debug"
@@ -66,16 +86,15 @@ matrix:
       compiler: gcc
     # All the trace backends (apart from dtrace)
     - env: TARGETS=i386-softmmu,x86_64-softmmu
-           EXTRA_CONFIG="--enable-trace-backend=stderr"
+           EXTRA_CONFIG="--enable-trace-backends=stderr"
       compiler: gcc
     - env: TARGETS=i386-softmmu,x86_64-softmmu
-           EXTRA_CONFIG="--enable-trace-backend=simple"
+           EXTRA_CONFIG="--enable-trace-backends=simple"
       compiler: gcc
     - env: TARGETS=i386-softmmu,x86_64-softmmu
-           EXTRA_CONFIG="--enable-trace-backend=ftrace"
-           TEST_CMD=""
+           EXTRA_CONFIG="--enable-trace-backends=ftrace"
       compiler: gcc
     - env: TARGETS=i386-softmmu,x86_64-softmmu
           EXTRA_PKGS="liblttng-ust-dev liburcu-dev"
-          EXTRA_CONFIG="--enable-trace-backend=ust"
+          EXTRA_CONFIG="--enable-trace-backends=ust"
       compiler: gcc
diff --git a/CODING_STYLE b/CODING_STYLE
index 4280945..d46cfa5 100644
--- a/CODING_STYLE
+++ b/CODING_STYLE
@@ -91,3 +91,17 @@ Mixed declarations (interleaving statements and declarations 
within blocks)
 are not allowed; declarations should be at the beginning of blocks.  In other
 words, the code should not generate warnings if using GCC's
 -Wdeclaration-after-statement option.
+
+6. Conditional statements
+
+When comparing a variable for (in)equality with a constant, list the
+constant on the right, as in:
+
+if (a == 1) {
+    /* Reads like: "If a equals 1" */
+    do_something();
+}
+
+Rationale: Yoda conditions (as in 'if (1 == a)') are awkward to read.
+Besides, good compilers already warn users when '==' is mis-typed as '=',
+even when the constant is on the right.
diff --git a/MAINTAINERS b/MAINTAINERS
index c66946f..bcb69e8 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -51,14 +51,34 @@ Descriptions of section entries:
 General Project Administration
 ------------------------------
 M: Anthony Liguori <aliguori@xxxxxxxxxx>
+M: Peter Maydell <peter.maydell@xxxxxxxxxx>
+
+Responsible Disclosure, Reporting Security Issues
+------------------------------
+W: http://wiki.qemu.org/SecurityProcess
+M: Michael S. Tsirkin <mst@xxxxxxxxxx>
+M: Anthony Liguori <aliguori@xxxxxxxxxx>
+L: secalert@xxxxxxxxxx

 Guest CPU cores (TCG):
 ----------------------
+Overall
+L: qemu-devel@xxxxxxxxxx
+S: Odd fixes
+F: cpu-exec.c
+F: cputlb.c
+F: softmmu_template.h
+F: translate-all.c
+F: include/exec/cpu_ldst.h
+F: include/exec/cpu_ldst_template.h
+F: include/exec/helper*.h
+
 Alpha
 M: Richard Henderson <rth@xxxxxxxxxxx>
 S: Maintained
 F: target-alpha/
 F: hw/alpha/
+F: tests/tcg/alpha/

 ARM
 M: Peter Maydell <peter.maydell@xxxxxxxxxx>
@@ -72,6 +92,7 @@ M: Edgar E. Iglesias <edgar.iglesias@xxxxxxxxx>
 S: Maintained
 F: target-cris/
 F: hw/cris/
+F: tests/tcg/cris/

 LM32
 M: Michael Walle <michael@xxxxxxxx>
@@ -79,6 +100,7 @@ S: Maintained
 F: target-lm32/
 F: hw/lm32/
 F: hw/char/lm32_*
+F: tests/tcg/lm32/

 M68K
 S: Orphan
@@ -93,9 +115,11 @@ F: hw/microblaze/

 MIPS
 M: Aurelien Jarno <aurelien@xxxxxxxxxxx>
-S: Odd Fixes
+M: Leon Alrae <leon.alrae@xxxxxxxxxx>
+S: Maintained
 F: target-mips/
 F: hw/mips/
+F: tests/tcg/mips/

 Moxie
 M: Anthony Green <green@xxxxxxxxxxxxxx>
@@ -107,6 +131,7 @@ M: Jia Liu <proljc@xxxxxxxxx>
 S: Maintained
 F: target-openrisc/
 F: hw/openrisc/
+F: tests/tcg/openrisc/

 PowerPC
 M: Alexander Graf <agraf@xxxxxxx>
@@ -142,7 +167,8 @@ F: target-unicore32/
 F: hw/unicore32/

 X86
-M: qemu-devel@xxxxxxxxxx
+M: Paolo Bonzini <pbonzini@xxxxxxxxxx>
+M: Richard Henderson <rth@xxxxxxxxxxx>
 S: Odd Fixes
 F: target-i386/
 F: hw/i386/
@@ -153,6 +179,13 @@ W: 
http://wiki.osll.spb.ru/doku.php?id=etc:users:jcmvbkbc:qemu-target-xtensa
 S: Maintained
 F: target-xtensa/
 F: hw/xtensa/
+F: tests/tcg/xtensa/
+
+TriCore
+M: Bastian Koppelmann <kbastian@xxxxxxxxxxxxxxxxxxxxx>
+S: Maintained
+F: target-tricore/
+F: hw/tricore/

 Guest CPU Cores (KVM):
 ----------------------
@@ -169,6 +202,11 @@ M: Peter Maydell <peter.maydell@xxxxxxxxxx>
 S: Maintained
 F: target-arm/kvm.c

+MIPS
+M: James Hogan <james.hogan@xxxxxxxxxx>
+S: Maintained
+F: target-mips/kvm.c
+
 PPC
 M: Alexander Graf <agraf@xxxxxxx>
 S: Maintained
@@ -180,9 +218,12 @@ M: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
 M: Alexander Graf <agraf@xxxxxxx>
 S: Maintained
 F: target-s390x/kvm.c
-F: hw/intc/s390_flic.[hc]
+F: hw/intc/s390_flic.c
+F: hw/intc/s390_flic_kvm.c
+F: include/hw/s390x/s390_flic.h

 X86
+M: Paolo Bonzini <pbonzini@xxxxxxxxxx>
 M: Marcelo Tosatti <mtosatti@xxxxxxxxxx>
 L: kvm@xxxxxxxxxxxxxxx
 S: Supported
@@ -236,8 +277,8 @@ S: Maintained
 F: hw/*/exynos*

 Calxeda Highbank
-M: Mark Langsdorf <mark.langsdorf@xxxxxxxxxxx>
-S: Supported
+M: Rob Herring <robh@xxxxxxxxxx>
+S: Maintained
 F: hw/arm/highbank.c
 F: hw/net/xgmac.c

@@ -248,7 +289,7 @@ F: include/hw/arm/digic.h
 F: hw/*/digic*

 Gumstix
-M: qemu-devel@xxxxxxxxxx
+L: qemu-devel@xxxxxxxxxx
 S: Orphan
 F: hw/arm/gumstix.c

@@ -264,7 +305,7 @@ S: Maintained
 F: hw/arm/integratorcp.c

 Mainstone
-M: qemu-devel@xxxxxxxxxx
+L: qemu-devel@xxxxxxxxxx
 S: Orphan
 F: hw/arm/mainstone.c

@@ -370,7 +411,7 @@ S: Maintained
 F: hw/mips/mips_malta.c

 Mipssim
-M: qemu-devel@xxxxxxxxxx
+L: qemu-devel@xxxxxxxxxx
 S: Orphan
 F: hw/mips/mips_mipssim.c

@@ -503,6 +544,8 @@ F: hw/s390x/s390-virtio-ccw.c
 F: hw/s390x/css.[hc]
 F: hw/s390x/sclp*.[hc]
 F: hw/s390x/ipl*.[hc]
+F: include/hw/s390x/
+F: pc-bios/s390-ccw/
 T: git git://github.com/cohuck/qemu virtio-ccw-upstr

 UniCore32 Machines
@@ -540,17 +583,19 @@ Xtensa Machines
 sim
 M: Max Filippov <jcmvbkbc@xxxxxxxxx>
 S: Maintained
-F: hw/xtensa/xtensa_sim.c
+F: hw/xtensa/sim.c

-Avnet LX60
+XTFPGA (LX60, LX200, ML605, KC705)
 M: Max Filippov <jcmvbkbc@xxxxxxxxx>
 S: Maintained
-F: hw/xtensa/xtensa_lx60.c
+F: hw/xtensa/xtfpga.c
+F: hw/net/opencores_eth.c

 Devices
 -------
 IDE
 M: Kevin Wolf <kwolf@xxxxxxxxxx>
+M: Stefan Hajnoczi <stefanha@xxxxxxxxxx>
 S: Odd Fixes
 F: include/hw/ide.h
 F: hw/ide/
@@ -601,6 +646,13 @@ USB
 M: Gerd Hoffmann <kraxel@xxxxxxxxxx>
 S: Maintained
 F: hw/usb/*
+F: tests/usb-*-test.c
+
+USB (serial adapter)
+M: Gerd Hoffmann <kraxel@xxxxxxxxxx>
+M: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx>
+S: Maintained
+F: hw/usb/dev-serial.c

 VFIO
 M: Alex Williamson <alex.williamson@xxxxxxxxxx>
@@ -651,6 +703,12 @@ S: Supported
 F: hw/block/nvme*
 F: tests/nvme-test.c

+megasas
+M: Hannes Reinecke <hare@xxxxxxx>
+S: Supported
+F: hw/scsi/megasas.c
+F: hw/scsi/mfi.h
+
 Xilinx EDK
 M: Peter Crosthwaite <peter.crosthwaite@xxxxxxxxxx>
 M: Edgar E. Iglesias <edgar.iglesias@xxxxxxxxx>
@@ -658,6 +716,12 @@ S: Maintained
 F: hw/*/xilinx_*
 F: include/hw/xilinx.h

+Vmware
+M: Dmitry Fleytman <dmitry@xxxxxxxxxx>
+S: Maintained
+F: hw/net/vmxnet*
+F: hw/scsi/vmw_pvscsi*
+
 Subsystems
 ----------
 Audio
@@ -666,21 +730,38 @@ M: Gerd Hoffmann <kraxel@xxxxxxxxxx>
 S: Maintained
 F: audio/
 F: hw/audio/
+F: tests/ac97-test.c
+F: tests/es1370-test.c
+F: tests/intel-hda-test.c

 Block
 M: Kevin Wolf <kwolf@xxxxxxxxxx>
 M: Stefan Hajnoczi <stefanha@xxxxxxxxxx>
 S: Supported
+F: async.c
+F: aio-*.c
 F: block*
 F: block/
 F: hw/block/
+F: qemu-img*
+F: qemu-io*
+F: tests/image-fuzzer/
+F: tests/qemu-iotests/
 T: git git://repo.or.cz/qemu/kevin.git block
 T: git git://github.com/stefanha/qemu.git block

 Character Devices
 M: Anthony Liguori <aliguori@xxxxxxxxxx>
+M: Paolo Bonzini <pbonzini@xxxxxxxxxx>
 S: Maintained
 F: qemu-char.c
+F: backends/msmouse.c
+F: backends/testdev.c
+
+Character Devices (Braille)
+M: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx>
+S: Maintained
+F: backends/baum.c

 CPU
 M: Andreas Färber <afaerber@xxxxxxx>
@@ -702,11 +783,21 @@ S: Maintained
 F: device_tree.[ch]

 GDB stub
-M: qemu-devel@xxxxxxxxxx
+L: qemu-devel@xxxxxxxxxx
 S: Odd Fixes
 F: gdbstub*
 F: gdb-xml/

+Memory API
+M: Paolo Bonzini <pbonzini@xxxxxxxxxx>
+S: Supported
+F: include/exec/ioport.h
+F: ioport.c
+F: include/exec/memory.h
+F: memory.c
+F: include/exec/memory-internal.h
+F: exec.c
+
 SPICE
 M: Gerd Hoffmann <kraxel@xxxxxxxxxx>
 S: Supported
@@ -729,7 +820,11 @@ F: ui/cocoa.m

 Main loop
 M: Anthony Liguori <aliguori@xxxxxxxxxx>
-S: Supported
+M: Paolo Bonzini <pbonzini@xxxxxxxxxx>
+S: Maintained
+F: cpus.c
+F: main-loop.c
+F: qemu-timer.c
 F: vl.c

 Human Monitor (HMP)
@@ -768,6 +863,7 @@ M: Luiz Capitulino <lcapitulino@xxxxxxxxxx>
 M: Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx>
 S: Maintained
 F: qapi/
+F: tests/qapi-schema/
 T: git git://repo.or.cz/qemu/qmp-unstable.git queue/qmp

 QAPI Schema
@@ -778,6 +874,29 @@ S: Supported
 F: qapi-schema.json
 T: git git://repo.or.cz/qemu/qmp-unstable.git queue/qmp

+QObject
+M: Luiz Capitulino <lcapitulino@xxxxxxxxxx>
+S: Maintained
+F: qobject/
+T: git git://repo.or.cz/qemu/qmp-unstable.git queue/qmp
+
+QEMU Guest Agent
+M: Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx>
+S: Maintained
+F: qga/
+T: git git://github.com/mdroth/qemu.git qga
+
+QOM
+M: Anthony Liguori <aliguori@xxxxxxxxxx>
+M: Andreas Färber <afaerber@xxxxxxx>
+S: Supported
+T: git git://github.com/afaerber/qemu-cpu.git qom-next
+F: include/qom/
+X: include/qom/cpu.h
+F: qom/
+X: qom/cpu.c
+F: tests/qom-test.c
+
 QMP
 M: Luiz Capitulino <lcapitulino@xxxxxxxxxx>
 S: Maintained
@@ -807,14 +926,29 @@ M: Blue Swirl <blauwirbel@xxxxxxxxx>
 S: Odd Fixes
 F: scripts/checkpatch.pl

+Migration
+M: Juan Quintela <quintela@xxxxxxxxxx>
+S: Maintained
+F: include/migration/
+F: migration*
+F: savevm.c
+F: arch_init.c
+F: vmstate.c
+
 Seccomp
-M: Eduardo Otubo <otubo@xxxxxxxxxxxxxxxxxx>
+M: Eduardo Otubo <eduardo.otubo@xxxxxxxxxxxxxxxx>
 S: Supported
 F: qemu-seccomp.c
 F: include/sysemu/seccomp.h

 Usermode Emulation
 ------------------
+Overall
+M: Riku Voipio <riku.voipio@xxxxxx>
+S: Maintained
+F: thunk.c
+F: user-exec.c
+
 BSD user
 M: Blue Swirl <blauwirbel@xxxxxxxxx>
 S: Maintained
@@ -828,7 +962,6 @@ F: linux-user/
 Tiny Code Generator (TCG)
 -------------------------
 Common code
-M: qemu-devel@xxxxxxxxxx
 M: Richard Henderson <rth@xxxxxxxxxxx>
 S: Maintained
 F: tcg/
@@ -845,7 +978,7 @@ S: Maintained
 F: tcg/arm/

 i386 target
-M: qemu-devel@xxxxxxxxxx
+L: qemu-devel@xxxxxxxxxx
 S: Maintained
 F: tcg/i386/

@@ -922,7 +1055,7 @@ S: Supported
 F: block/rbd.c

 Sheepdog
-M: MORITA Kazutaka <morita.kazutaka@xxxxxxxxxxxxx>
+M: Hitoshi Mitake <mitake.hitoshi@xxxxxxxxxxxxx>
 M: Liu Yuan <namei.unix@xxxxxxxxx>
 L: sheepdog@xxxxxxxxxxxxxx
 S: Supported
@@ -954,3 +1087,14 @@ SSH
 M: Richard W.M. Jones <rjones@xxxxxxxxxx>
 S: Supported
 F: block/ssh.c
+
+ARCHIPELAGO
+M: Chrysostomos Nanakos <cnanakos@xxxxxxxx>
+M: Chrysostomos Nanakos <chris@xxxxxxxxxx>
+S: Maintained
+F: block/archipelago.c
+
+Bootdevice
+M: Gonglei <arei.gonglei@xxxxxxxxxx>
+S: Maintained
+F: bootdevice.c
diff --git a/Makefile b/Makefile
index 423e373..f505202 100644
--- a/Makefile
+++ b/Makefile
@@ -45,19 +45,25 @@ endif
 endif

 GENERATED_HEADERS = config-host.h qemu-options.def
-GENERATED_HEADERS += qmp-commands.h qapi-types.h qapi-visit.h
-GENERATED_SOURCES += qmp-marshal.c qapi-types.c qapi-visit.c
+GENERATED_HEADERS += qmp-commands.h qapi-types.h qapi-visit.h qapi-event.h
+GENERATED_SOURCES += qmp-marshal.c qapi-types.c qapi-visit.c qapi-event.c

 GENERATED_HEADERS += trace/generated-events.h
 GENERATED_SOURCES += trace/generated-events.c

 GENERATED_HEADERS += trace/generated-tracers.h
-ifeq ($(TRACE_BACKEND),dtrace)
+ifeq ($(findstring dtrace,$(TRACE_BACKENDS)),dtrace)
 GENERATED_HEADERS += trace/generated-tracers-dtrace.h
 endif
 GENERATED_SOURCES += trace/generated-tracers.c

-ifeq ($(TRACE_BACKEND),ust)
+GENERATED_HEADERS += trace/generated-tcg-tracers.h
+
+GENERATED_HEADERS += trace/generated-helpers-wrappers.h
+GENERATED_HEADERS += trace/generated-helpers.h
+GENERATED_SOURCES += trace/generated-helpers.c
+
+ifeq ($(findstring ust,$(TRACE_BACKENDS)),ust)
 GENERATED_HEADERS += trace/generated-ust-provider.h
 GENERATED_SOURCES += trace/generated-ust.c
 endif
@@ -148,10 +154,6 @@ endif

 all: $(DOCS) $(TOOLS) $(HELPERS-y) recurse-all modules

-vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
-
-vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
-
 config-host.h: config-host.h-timestamp
 config-host.h-timestamp: config-host.mak
 qemu-options.def: $(SRC_PATH)/qemu-options.hx
@@ -195,8 +197,6 @@ ALL_SUBDIRS=$(TARGET_DIRS) $(patsubst %,pc-bios/%, $(ROMS))

 recurse-all: $(SUBDIR_RULES) $(ROMSUBDIR_RULES)

-bt-host.o: QEMU_CFLAGS += $(BLUEZ_CFLAGS)
-
 $(BUILD_DIR)/version.o: $(SRC_PATH)/version.rc $(BUILD_DIR)/config-host.h | 
$(BUILD_DIR)/version.lo
        $(call quiet-command,$(WINDRES) -I$(BUILD_DIR) -o $@ $<,"  RC    
version.o")
 $(BUILD_DIR)/version.lo: $(SRC_PATH)/version.rc $(BUILD_DIR)/config-host.h
@@ -208,7 +208,7 @@ Makefile: $(version-obj-y) $(version-lobj-y)
 # Build libraries

 libqemustub.a: $(stub-obj-y)
-libqemuutil.a: $(util-obj-y) qapi-types.o qapi-visit.o
+libqemuutil.a: $(util-obj-y)

 block-modules = $(foreach o,$(block-obj-m),"$(basename $(subst /,-,$o))",) NULL
 util/module.o-cflags = -D'CONFIG_BLOCK_MODULES=$(block-modules)'
@@ -238,23 +238,44 @@ qapi-py = $(SRC_PATH)/scripts/qapi.py 
$(SRC_PATH)/scripts/ordereddict.py

 qga/qapi-generated/qga-qapi-types.c qga/qapi-generated/qga-qapi-types.h :\
 $(SRC_PATH)/qga/qapi-schema.json $(SRC_PATH)/scripts/qapi-types.py $(qapi-py)
-       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-types.py 
$(gen-out-type) -o qga/qapi-generated -p "qga-" < $<, "  GEN   $@")
+       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-types.py \
+               $(gen-out-type) -o qga/qapi-generated -p "qga-" -i $<, \
+               "  GEN   $@")
 qga/qapi-generated/qga-qapi-visit.c qga/qapi-generated/qga-qapi-visit.h :\
 $(SRC_PATH)/qga/qapi-schema.json $(SRC_PATH)/scripts/qapi-visit.py $(qapi-py)
-       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-visit.py 
$(gen-out-type) -o qga/qapi-generated -p "qga-" < $<, "  GEN   $@")
+       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-visit.py \
+               $(gen-out-type) -o qga/qapi-generated -p "qga-" -i $<, \
+               "  GEN   $@")
 qga/qapi-generated/qga-qmp-commands.h qga/qapi-generated/qga-qmp-marshal.c :\
 $(SRC_PATH)/qga/qapi-schema.json $(SRC_PATH)/scripts/qapi-commands.py 
$(qapi-py)
-       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-commands.py 
$(gen-out-type) -o qga/qapi-generated -p "qga-" < $<, "  GEN   $@")
+       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-commands.py \
+               $(gen-out-type) -o qga/qapi-generated -p "qga-" -i $<, \
+               "  GEN   $@")
+
+qapi-modules = $(SRC_PATH)/qapi-schema.json $(SRC_PATH)/qapi/common.json \
+               $(SRC_PATH)/qapi/block.json $(SRC_PATH)/qapi/block-core.json \
+               $(SRC_PATH)/qapi/event.json

 qapi-types.c qapi-types.h :\
-$(SRC_PATH)/qapi-schema.json $(SRC_PATH)/scripts/qapi-types.py $(qapi-py)
-       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-types.py 
$(gen-out-type) -o "." -b < $<, "  GEN   $@")
+$(qapi-modules) $(SRC_PATH)/scripts/qapi-types.py $(qapi-py)
+       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-types.py \
+               $(gen-out-type) -o "." -b -i $<, \
+               "  GEN   $@")
 qapi-visit.c qapi-visit.h :\
-$(SRC_PATH)/qapi-schema.json $(SRC_PATH)/scripts/qapi-visit.py $(qapi-py)
-       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-visit.py 
$(gen-out-type) -o "." -b < $<, "  GEN   $@")
+$(qapi-modules) $(SRC_PATH)/scripts/qapi-visit.py $(qapi-py)
+       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-visit.py \
+               $(gen-out-type) -o "." -b -i $<, \
+               "  GEN   $@")
+qapi-event.c qapi-event.h :\
+$(qapi-modules) $(SRC_PATH)/scripts/qapi-event.py $(qapi-py)
+       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-event.py \
+               $(gen-out-type) -o "." -b -i $<, \
+               "  GEN   $@")
 qmp-commands.h qmp-marshal.c :\
-$(SRC_PATH)/qapi-schema.json $(SRC_PATH)/scripts/qapi-commands.py $(qapi-py)
-       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-commands.py 
$(gen-out-type) -m -o "." < $<, "  GEN   $@")
+$(qapi-modules) $(SRC_PATH)/scripts/qapi-commands.py $(qapi-py)
+       $(call quiet-command,$(PYTHON) $(SRC_PATH)/scripts/qapi-commands.py \
+               $(gen-out-type) -o "." -m -i $<, \
+               "  GEN   $@")

 QGALIB_GEN=$(addprefix qga/qapi-generated/, qga-qapi-types.h qga-qapi-visit.h 
qga-qmp-commands.h)
 $(qga-obj-y) qemu-ga.o: $(QGALIB_GEN)
@@ -329,7 +350,8 @@ multiboot.bin linuxboot.bin kvmvapic.bin \
 s390-zipl.rom \
 s390-ccw.img \
 spapr-rtas.bin slof.bin \
-palcode-clipper
+palcode-clipper \
+u-boot.e500
 else
 BLOBS=
 endif
@@ -370,19 +392,19 @@ install-sysconfig: install-datadir install-confdir

 install: all $(if $(BUILD_DOCS),install-doc) install-sysconfig \
 install-datadir install-localstatedir
-       $(INSTALL_DIR) "$(DESTDIR)$(bindir)"
 ifneq ($(TOOLS),)
-       $(INSTALL_PROG) $(STRIP_OPT) $(TOOLS) "$(DESTDIR)$(bindir)"
+       $(call install-prog,$(TOOLS),$(DESTDIR)$(bindir))
 endif
 ifneq ($(CONFIG_MODULES),)
        $(INSTALL_DIR) "$(DESTDIR)$(qemu_moddir)"
-       for s in $(patsubst %.mo,%$(DSOSUF),$(modules-m)); do \
-               $(INSTALL_PROG) $(STRIP_OPT) $$s 
"$(DESTDIR)$(qemu_moddir)/$$(echo $$s | tr / -)"; \
+       for s in $(modules-m:.mo=$(DSOSUF)); do \
+               t="$(DESTDIR)$(qemu_moddir)/$$(echo $$s | tr / -)"; \
+               $(INSTALL_LIB) $$s "$$t"; \
+               test -z "$(STRIP)" || $(STRIP) "$$t"; \
        done
 endif
 ifneq ($(HELPERS-y),)
-       $(INSTALL_DIR) "$(DESTDIR)$(libexecdir)"
-       $(INSTALL_PROG) $(STRIP_OPT) $(HELPERS-y) "$(DESTDIR)$(libexecdir)"
+       $(call install-prog,$(HELPERS-y),$(DESTDIR)$(libexecdir))
 endif
 ifneq ($(BLOBS),)
        set -e; for x in $(BLOBS); do \
@@ -396,6 +418,7 @@ endif
        set -e; for x in $(KEYMAPS); do \
                $(INSTALL_DATA) $(SRC_PATH)/pc-bios/keymaps/$$x 
"$(DESTDIR)$(qemu_datadir)/keymaps"; \
        done
+       $(INSTALL_DATA) $(SRC_PATH)/trace-events 
"$(DESTDIR)$(qemu_datadir)/trace-events"
        for d in $(TARGET_DIRS); do \
        $(MAKE) $(SUBDIR_MAKEFLAGS) TARGET_DIR=$$d/ -C $$d $@ || exit 1 ; \
         done
diff --git a/Makefile.objs b/Makefile.objs
index a6e0e2a..18fd35c 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -1,7 +1,7 @@
 #######################################################################
 # Common libraries for tools and emulators
 stub-obj-y = stubs/
-util-obj-y = util/ qobject/ qapi/ trace/
+util-obj-y = util/ qobject/ qapi/ qapi-types.o qapi-visit.o qapi-event.o

 #######################################################################
 # block-obj-y is code used by both qemu system emulation and qemu-img
@@ -12,7 +12,6 @@ block-obj-y += main-loop.o iohandler.o qemu-timer.o
 block-obj-$(CONFIG_POSIX) += aio-posix.o
 block-obj-$(CONFIG_WIN32) += aio-win32.o
 block-obj-y += block/
-block-obj-y += qapi-types.o qapi-visit.o
 block-obj-y += qemu-io-cmds.o

 block-obj-y += qemu-coroutine.o qemu-coroutine-lock.o qemu-coroutine-io.o
@@ -31,6 +30,8 @@ libcacard-y += libcacard/vcard_emul_nss.o
 libcacard-y += libcacard/vcard_emul_type.o
 libcacard-y += libcacard/card_7816.o
 libcacard-y += libcacard/vcardt.o
+libcacard/vcard_emul_nss.o-cflags := $(NSS_CFLAGS)
+libcacard/vcard_emul_nss.o-libs := $(NSS_LIBS)

 ######################################################################
 # Target independent part of system emulation. The long term path is to
@@ -49,7 +50,7 @@ common-obj-$(CONFIG_LINUX) += fsdev/

 common-obj-y += migration.o migration-tcp.o
 common-obj-y += vmstate.o
-common-obj-y += qemu-file.o
+common-obj-y += qemu-file.o qemu-file-unix.o qemu-file-stdio.o
 common-obj-$(CONFIG_RDMA) += migration-rdma.o
 common-obj-y += qemu-char.o #aio.o
 common-obj-y += block-migration.o
@@ -61,12 +62,15 @@ common-obj-$(CONFIG_SPICE) += spice-qemu-char.o

 common-obj-y += audio/
 common-obj-y += hw/
+common-obj-y += accel.o

 common-obj-y += ui/
 common-obj-y += bt-host.o bt-vhci.o
+bt-host.o-cflags := $(BLUEZ_CFLAGS)

 common-obj-y += dma-helpers.o
 common-obj-y += vl.o
+vl.o-cflags := $(GPROF_CFLAGS) $(SDL_CFLAGS)
 common-obj-y += tpm.o

 common-obj-$(CONFIG_SLIRP) += slirp/
@@ -84,11 +88,6 @@ common-obj-y += qmp-marshal.o
 common-obj-y += qmp.o hmp.o
 endif

-######################################################################
-# some qapi visitors are used by both system and user emulation:
-
-common-obj-y += qapi-visit.o qapi-types.o
-
 #######################################################################
 # Target-independent parts used in system and user emulation
 common-obj-y += qemu-log.o
@@ -103,9 +102,14 @@ version-obj-$(CONFIG_WIN32) += $(BUILD_DIR)/version.o
 version-lobj-$(CONFIG_WIN32) += $(BUILD_DIR)/version.lo

 ######################################################################
+# tracing
+util-obj-y +=  trace/
+target-obj-y += trace/
+
+######################################################################
 # guest agent

 # FIXME: a few definitions from qapi-types.o/qapi-visit.o are needed
 # by libqemuutil.a.  These should be moved to a separate .json schema.
-qga-obj-y = qga/ qapi-types.o qapi-visit.o
+qga-obj-y = qga/
 qga-vss-dll-obj-y = qga/
diff --git a/Makefile.target b/Makefile.target
index 6d8fde8..e9ff1ee 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -16,26 +16,29 @@ QEMU_CFLAGS+=-I$(SRC_PATH)/include
 ifdef CONFIG_USER_ONLY
 # user emulator name
 QEMU_PROG=qemu-$(TARGET_NAME)
+QEMU_PROG_BUILD = $(QEMU_PROG)
 else
 # system emulator name
+QEMU_PROG=qemu-system-$(TARGET_NAME)$(EXESUF)
 ifneq (,$(findstring -mwindows,$(libs_softmmu)))
 # Terminate program name with a 'w' because the linker builds a windows 
executable.
 QEMU_PROGW=qemu-system-$(TARGET_NAME)w$(EXESUF)
-endif # windows executable
-QEMU_PROG=qemu-system-$(TARGET_NAME)$(EXESUF)
+$(QEMU_PROG): $(QEMU_PROGW)
+       $(call quiet-command,$(OBJCOPY) --subsystem console $(QEMU_PROGW) 
$(QEMU_PROG),"  GEN   $(TARGET_DIR)$(QEMU_PROG)")
+QEMU_PROG_BUILD = $(QEMU_PROGW)
+else
+QEMU_PROG_BUILD = $(QEMU_PROG)
 endif
-
-PROGS=$(QEMU_PROG)
-ifdef QEMU_PROGW
-PROGS+=$(QEMU_PROGW)
 endif
+
+PROGS=$(QEMU_PROG) $(QEMU_PROGW)
 STPFILES=

 config-target.h: config-target.h-timestamp
 config-target.h-timestamp: config-target.mak

 ifdef CONFIG_TRACE_SYSTEMTAP
-stap: $(QEMU_PROG).stp-installed $(QEMU_PROG).stp
+stap: $(QEMU_PROG).stp-installed $(QEMU_PROG).stp $(QEMU_PROG)-simpletrace.stp

 ifdef CONFIG_USER_ONLY
 TARGET_TYPE=user
@@ -46,7 +49,7 @@ endif
 $(QEMU_PROG).stp-installed: $(SRC_PATH)/trace-events
        $(call quiet-command,$(TRACETOOL) \
                --format=stap \
-               --backend=$(TRACE_BACKEND) \
+               --backends=$(TRACE_BACKENDS) \
                --binary=$(bindir)/$(QEMU_PROG) \
                --target-name=$(TARGET_NAME) \
                --target-type=$(TARGET_TYPE) \
@@ -55,12 +58,19 @@ $(QEMU_PROG).stp-installed: $(SRC_PATH)/trace-events
 $(QEMU_PROG).stp: $(SRC_PATH)/trace-events
        $(call quiet-command,$(TRACETOOL) \
                --format=stap \
-               --backend=$(TRACE_BACKEND) \
+               --backends=$(TRACE_BACKENDS) \
                --binary=$(realpath .)/$(QEMU_PROG) \
                --target-name=$(TARGET_NAME) \
                --target-type=$(TARGET_TYPE) \
                < $< > $@,"  GEN   $(TARGET_DIR)$(QEMU_PROG).stp")

+$(QEMU_PROG)-simpletrace.stp: $(SRC_PATH)/trace-events
+       $(call quiet-command,$(TRACETOOL) \
+               --format=simpletrace-stap \
+               --backends=$(TRACE_BACKENDS) \
+               --probe-prefix=qemu.$(TARGET_TYPE).$(TARGET_NAME) \
+               < $< > $@,"  GEN   $(TARGET_DIR)$(QEMU_PROG)-simpletrace.stp")
+
 else
 stap:
 endif
@@ -82,6 +92,12 @@ obj-y += disas.o
 obj-$(call notempty,$(TARGET_XML_FILES)) += gdbstub-xml.o
 obj-$(call lnot,$(CONFIG_KVM)) += kvm-stub.o

+obj-$(CONFIG_LIBDECNUMBER) += libdecnumber/decContext.o
+obj-$(CONFIG_LIBDECNUMBER) += libdecnumber/decNumber.o
+obj-$(CONFIG_LIBDECNUMBER) += libdecnumber/dpd/decimal32.o
+obj-$(CONFIG_LIBDECNUMBER) += libdecnumber/dpd/decimal64.o
+obj-$(CONFIG_LIBDECNUMBER) += libdecnumber/dpd/decimal128.o
+
 #########################################################
 # Linux user emulator target

@@ -99,7 +115,8 @@ endif #CONFIG_LINUX_USER

 ifdef CONFIG_BSD_USER

-QEMU_CFLAGS+=-I$(SRC_PATH)/bsd-user -I$(SRC_PATH)/bsd-user/$(TARGET_ABI_DIR)
+QEMU_CFLAGS+=-I$(SRC_PATH)/bsd-user -I$(SRC_PATH)/bsd-user/$(TARGET_ABI_DIR) \
+                        -I$(SRC_PATH)/bsd-user/$(HOST_VARIANT_DIR)

 obj-y += bsd-user/
 obj-y += gdbstub.o user-exec.o
@@ -109,8 +126,8 @@ endif #CONFIG_BSD_USER
 #########################################################
 # System emulator target
 ifdef CONFIG_SOFTMMU
-obj-y += arch_init.o cpus.o monitor.o gdbstub.o balloon.o ioport.o
-obj-y += qtest.o
+obj-y += arch_init.o cpus.o monitor.o gdbstub.o balloon.o ioport.o numa.o
+obj-y += qtest.o bootdevice.o
 obj-y += hw/
 obj-$(CONFIG_FDT) += device_tree.o
 obj-$(CONFIG_KVM) += kvm-all.o
@@ -140,40 +157,27 @@ endif # CONFIG_SOFTMMU
 %/translate.o: QEMU_CFLAGS += $(TRANSLATE_OPT_CFLAGS)

 dummy := $(call unnest-vars,,obj-y)
+all-obj-y := $(obj-y)

-# we are making another call to unnest-vars with different vars, protect obj-y,
-# it can be overriden in subdir Makefile.objs
-obj-y-save := $(obj-y)
-
+target-obj-y :=
 block-obj-y :=
 common-obj-y :=
 include $(SRC_PATH)/Makefile.objs
+dummy := $(call unnest-vars,,target-obj-y)
+target-obj-y-save := $(target-obj-y)
 dummy := $(call unnest-vars,.., \
                block-obj-y \
                block-obj-m \
                common-obj-y \
                common-obj-m)
-
-# Now restore obj-y
-obj-y := $(obj-y-save)
-
-all-obj-y = $(obj-y) $(common-obj-y)
+target-obj-y := $(target-obj-y-save)
+all-obj-y += $(common-obj-y)
+all-obj-y += $(target-obj-y)
 all-obj-$(CONFIG_SOFTMMU) += $(block-obj-y)

-ifndef CONFIG_HAIKU
-LIBS+=-lm
-endif
-
-ifdef QEMU_PROGW
-# The linker builds a windows executable. Make also a console executable.
-$(QEMU_PROGW): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
-       $(call LINK,$^)
-$(QEMU_PROG): $(QEMU_PROGW)
-       $(call quiet-command,$(OBJCOPY) --subsystem console $(QEMU_PROGW) 
$(QEMU_PROG),"  GEN   $(TARGET_DIR)$(QEMU_PROG)")
-else
-$(QEMU_PROG): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
+# build either PROG or PROGW
+$(QEMU_PROG_BUILD): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
        $(call LINK,$^)
-endif

 gdbstub-xml.c: $(TARGET_XML_FILES) $(SRC_PATH)/scripts/feature_to_c.sh
        $(call quiet-command,rm -f $@ && $(SHELL) 
$(SRC_PATH)/scripts/feature_to_c.sh $@ $(TARGET_XML_FILES),"  GEN   
$(TARGET_DIR)$@")
@@ -194,14 +198,12 @@ endif

 install: all
 ifneq ($(PROGS),)
-       $(INSTALL) -m 755 $(PROGS) "$(DESTDIR)$(bindir)"
-ifneq ($(STRIP),)
-       $(STRIP) $(patsubst %,"$(DESTDIR)$(bindir)/%",$(PROGS))
-endif
+       $(call install-prog,$(PROGS),$(DESTDIR)$(bindir))
 endif
 ifdef CONFIG_TRACE_SYSTEMTAP
        $(INSTALL_DIR) "$(DESTDIR)$(qemu_datadir)/../systemtap/tapset"
        $(INSTALL_DATA) $(QEMU_PROG).stp-installed 
"$(DESTDIR)$(qemu_datadir)/../systemtap/tapset/$(QEMU_PROG).stp"
+       $(INSTALL_DATA) $(QEMU_PROG)-simpletrace.stp 
"$(DESTDIR)$(qemu_datadir)/../systemtap/tapset/$(QEMU_PROG)-simpletrace.stp"
 endif

 GENERATED_HEADERS += config-target.h
diff --git a/VERSION b/VERSION
index e9307ca..ccbccc3 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.0.2
+2.2.0
diff --git a/accel.c b/accel.c
new file mode 100644
index 0000000..74e41da
--- /dev/null
+++ b/accel.c
@@ -0,0 +1,157 @@
+/*
+ * QEMU System Emulator, accelerator interfaces
+ *
+ * Copyright (c) 2003-2008 Fabrice Bellard
+ * Copyright (c) 2014 Red Hat Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to 
deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 
FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
+#include "sysemu/accel.h"
+#include "hw/boards.h"
+#include "qemu-common.h"
+#include "sysemu/arch_init.h"
+#include "sysemu/sysemu.h"
+#include "sysemu/kvm.h"
+#include "sysemu/qtest.h"
+#include "hw/xen/xen.h"
+#include "qom/object.h"
+#include "hw/boards.h"
+
+int tcg_tb_size;
+static bool tcg_allowed = true;
+
+static int tcg_init(MachineState *ms)
+{
+    tcg_exec_init(tcg_tb_size * 1024 * 1024);
+    return 0;
+}
+
+static const TypeInfo accel_type = {
+    .name = TYPE_ACCEL,
+    .parent = TYPE_OBJECT,
+    .class_size = sizeof(AccelClass),
+    .instance_size = sizeof(AccelState),
+};
+
+/* Lookup AccelClass from opt_name. Returns NULL if not found */
+static AccelClass *accel_find(const char *opt_name)
+{
+    char *class_name = g_strdup_printf(ACCEL_CLASS_NAME("%s"), opt_name);
+    AccelClass *ac = ACCEL_CLASS(object_class_by_name(class_name));
+    g_free(class_name);
+    return ac;
+}
+
+static int accel_init_machine(AccelClass *acc, MachineState *ms)
+{
+    ObjectClass *oc = OBJECT_CLASS(acc);
+    const char *cname = object_class_get_name(oc);
+    AccelState *accel = ACCEL(object_new(cname));
+    int ret;
+    ms->accelerator = accel;
+    *(acc->allowed) = true;
+    ret = acc->init_machine(ms);
+    if (ret < 0) {
+        ms->accelerator = NULL;
+        *(acc->allowed) = false;
+        object_unref(OBJECT(accel));
+    }
+    return ret;
+}
+
+int configure_accelerator(MachineState *ms)
+{
+    const char *p;
+    char buf[10];
+    int ret;
+    bool accel_initialised = false;
+    bool init_failed = false;
+    AccelClass *acc = NULL;
+
+    p = qemu_opt_get(qemu_get_machine_opts(), "accel");
+    if (p == NULL) {
+        /* Use the default "accelerator", tcg */
+        p = "tcg";
+    }
+
+    while (!accel_initialised && *p != '\0') {
+        if (*p == ':') {
+            p++;
+        }
+        p = get_opt_name(buf, sizeof(buf), p, ':');
+        acc = accel_find(buf);
+        if (!acc) {
+            fprintf(stderr, "\"%s\" accelerator not found.\n", buf);
+            continue;
+        }
+        if (acc->available && !acc->available()) {
+            printf("%s not supported for this target\n",
+                   acc->name);
+            continue;
+        }
+        ret = accel_init_machine(acc, ms);
+        if (ret < 0) {
+            init_failed = true;
+            fprintf(stderr, "failed to initialize %s: %s\n",
+                    acc->name,
+                    strerror(-ret));
+        } else {
+            accel_initialised = true;
+        }
+    }
+
+    if (!accel_initialised) {
+        if (!init_failed) {
+            fprintf(stderr, "No accelerator found!\n");
+        }
+        exit(1);
+    }
+
+    if (init_failed) {
+        fprintf(stderr, "Back to %s accelerator.\n", acc->name);
+    }
+
+    return !accel_initialised;
+}
+
+
+static void tcg_accel_class_init(ObjectClass *oc, void *data)
+{
+    AccelClass *ac = ACCEL_CLASS(oc);
+    ac->name = "tcg";
+    ac->init_machine = tcg_init;
+    ac->allowed = &tcg_allowed;
+}
+
+#define TYPE_TCG_ACCEL ACCEL_CLASS_NAME("tcg")
+
+static const TypeInfo tcg_accel_type = {
+    .name = TYPE_TCG_ACCEL,
+    .parent = TYPE_ACCEL,
+    .class_init = tcg_accel_class_init,
+};
+
+static void register_accel_types(void)
+{
+    type_register_static(&accel_type);
+    type_register_static(&tcg_accel_type);
+}
+
+type_init(register_accel_types);
diff --git a/aio-posix.c b/aio-posix.c
index f921d4f..d3ac06e 100644
--- a/aio-posix.c
+++ b/aio-posix.c
@@ -100,6 +100,11 @@ void aio_set_event_notifier(AioContext *ctx,
                        (IOHandler *)io_read, NULL, notifier);
 }

+bool aio_prepare(AioContext *ctx)
+{
+    return false;
+}
+
 bool aio_pending(AioContext *ctx)
 {
     AioHandler *node;
@@ -119,13 +124,22 @@ bool aio_pending(AioContext *ctx)
     return false;
 }

-static bool aio_dispatch(AioContext *ctx)
+bool aio_dispatch(AioContext *ctx)
 {
     AioHandler *node;
     bool progress = false;

     /*
-     * We have to walk very carefully in case qemu_aio_set_fd_handler is
+     * If there are callbacks left that have been queued, we need to call them.
+     * Do not call select in this case, because it is possible that the caller
+     * does not need a complete flush (as is the case for aio_poll loops).
+     */
+    if (aio_bh_poll(ctx)) {
+        progress = true;
+    }
+
+    /*
+     * We have to walk very carefully in case aio_set_fd_handler is
      * called while we're walking.
      */
     node = QLIST_FIRST(&ctx->aio_handlers);
@@ -175,28 +189,24 @@ static bool aio_dispatch(AioContext *ctx)
 bool aio_poll(AioContext *ctx, bool blocking)
 {
     AioHandler *node;
+    bool was_dispatching;
     int ret;
     bool progress;

+    was_dispatching = ctx->dispatching;
     progress = false;

-    /*
-     * If there are callbacks left that have been queued, we need to call them.
-     * Do not call select in this case, because it is possible that the caller
-     * does not need a complete flush (as is the case for qemu_aio_wait loops).
+    /* aio_notify can avoid the expensive event_notifier_set if
+     * everything (file descriptors, bottom halves, timers) will
+     * be re-evaluated before the next blocking poll().  This is
+     * already true when aio_poll is called with blocking == false;
+     * if blocking == true, it is only true after poll() returns.
+     *
+     * If we're in a nested event loop, ctx->dispatching might be true.
+     * In that case we can restore it just before returning, but we
+     * have to clear it now.
      */
-    if (aio_bh_poll(ctx)) {
-        blocking = false;
-        progress = true;
-    }
-
-    if (aio_dispatch(ctx)) {
-        progress = true;
-    }
-
-    if (progress && !blocking) {
-        return true;
-    }
+    aio_set_dispatching(ctx, !blocking);

     ctx->walking_handlers++;

@@ -220,7 +230,7 @@ bool aio_poll(AioContext *ctx, bool blocking)
     /* wait until next event */
     ret = qemu_poll_ns((GPollFD *)ctx->pollfds->data,
                          ctx->pollfds->len,
-                         blocking ? timerlistgroup_deadline_ns(&ctx->tlg) : 0);
+                         blocking ? aio_compute_timeout(ctx) : 0);

     /* if we have any readable fds, dispatch event */
     if (ret > 0) {
@@ -234,9 +244,11 @@ bool aio_poll(AioContext *ctx, bool blocking)
     }

     /* Run dispatch even if there were no readable fds to run timers */
+    aio_set_dispatching(ctx, true);
     if (aio_dispatch(ctx)) {
         progress = true;
     }

+    aio_set_dispatching(ctx, was_dispatching);
     return progress;
 }
diff --git a/aio-win32.c b/aio-win32.c
index 23f4e5b..d81313b 100644
--- a/aio-win32.c
+++ b/aio-win32.c
@@ -22,12 +22,80 @@

 struct AioHandler {

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.