From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org, Peter Maydell <peter.maydell@linaro.org>
Subject: Re: [Qemu-devel] [PULL 00/62] KVM, dirty bitmap, build system, SMM, icount changes for 2015-06-05
Date: Fri, 05 Jun 2015 17:30:13 +0200 [thread overview]
Message-ID: <5571C085.2020408@redhat.com> (raw)
In-Reply-To: <1433517363-32335-1-git-send-email-pbonzini@redhat.com>
On 05/06/2015 17:15, Paolo Bonzini wrote:
> The following changes since commit 00967f4e0bab246679d0ddc32fd31a7179345baf:
>
> Merge remote-tracking branch 'remotes/agraf/tags/signed-s390-for-upstream' into staging (2015-06-05 12:04:42 +0100)
>
> are available in the git repository at:
>
> git://github.com/bonzini/qemu.git tags/for-upstream
>
> for you to fetch changes up to 4f4edb40f55b130b00960abc826a588b31bd3308:
>
> update Linux headers from kvm/next (2015-06-05 17:10:02 +0200)
>
> Apologies for the very large pull request, mostly due to the two main
> topics (dirty bitmap + SMM) being reviewed more or less at the same time.
>
> ----------------------------------------------------------------
> * KVM error improvement from Laurent
> * CONFIG_PARALLEL fix from Mirek
> * Atomic/optimized dirty bitmap access from myself and Stefan
> * BUILD_DIR convenience/bugfix from Peter C
> * Memory leak fix from Shannon
> * SMM improvements (though still TCG only) from myself and Gerd, acked by mst
>
> ----------------------------------------------------------------
> Fam Zheng (1):
> qemu-nbd: Switch to qemu_set_fd_handler
>
> Gerd Hoffmann (6):
> q35: fix ESMRAMC default
> q35: add config space wmask for SMRAM and ESMRAMC
> q35: implement SMRAM.D_LCK
> q35: add test for SMRAM.D_LCK
> q35: implement TSEG
> ich9: implement SMI_LOCK
>
> Laurent Vivier (1):
> ppc: add helpful message when KVM fails to start VCPU
>
> Miroslav Rezanina (1):
> Move parallel_hds_isa_init to hw/isa/isa-bus.c
>
> Paolo Bonzini (43):
> exec: optimize phys_page_set_level
> memory: the only dirty memory flag for users is DIRTY_MEMORY_VGA
> g364fb: remove pointless call to memory_region_set_coalescing
> display: enable DIRTY_MEMORY_VGA tracking explicitly
> display: add memory_region_sync_dirty_bitmap calls
> memory: differentiate memory_region_is_logging and memory_region_get_dirty_log_mask
> memory: prepare for multiple bits in the dirty log mask
> framebuffer: check memory_region_is_logging
> ui/console: remove dpy_gfx_update_dirty
> memory: track DIRTY_MEMORY_CODE in mr->dirty_log_mask
> kvm: accept non-mapped memory in kvm_dirty_pages_log_change
> memory: include DIRTY_MEMORY_MIGRATION in the dirty log mask
> kvm: remove special handling of DIRTY_MEMORY_MIGRATION in the dirty log mask
> ram_addr: tweaks to xen_modified_memory
> exec: use memory_region_get_dirty_log_mask to optimize dirty tracking
> exec: move functions to translate-all.h
> translate-all: remove unnecessary argument to tb_invalidate_phys_range
> cputlb: remove useless arguments to tlb_unprotect_code_phys, rename
> translate-all: make less of tb_invalidate_phys_page_range depend on is_cpu_write_access
> exec: pass client mask to cpu_physical_memory_set_dirty_range
> exec: invert return value of cpu_physical_memory_get_clean, rename
> exec: only check relevant bitmaps for cleanliness
> memory: do not touch code dirty bitmap unless TCG is enabled
> memory: use mr->ram_addr in "is this RAM?" assertions
> target-i386: introduce cpu_get_mem_attrs
> target-i386: Use correct memory attributes for memory accesses
> target-i386: Use correct memory attributes for ioport accesses
> target-i386: mask NMIs on entry to SMM
> target-i386: set G=1 in SMM big real mode selectors
> target-i386: wake up processors that receive an SMI
> pflash_cfi01: change big-endian property to BIT type
> pflash_cfi01: change to new-style MMIO accessors
> pflash_cfi01: add secure property
> vl: allow full-blown QemuOpts syntax for -global
> qom: add object_property_add_const_link
> vl: run "late" notifiers immediately
> target-i386: create a separate AddressSpace for each CPU
> hw/i386: add a separate region that tracks the SMRAME bit
> target-i386: use memory API to implement SMRAM
> hw/i386: remove smram_update
> q35: implement high SMRAM
> atomics: add explicit compiler fence in __atomic memory barriers
> update Linux headers from kvm/next
>
> Peter Crosthwaite (1):
> Makefile.target: set master BUILD_DIR
>
> Stefan Hajnoczi (6):
> bitmap: add atomic set functions
> bitmap: add atomic test and clear
> memory: use atomic ops for setting dirty memory bits
> migration: move dirty bitmap sync to ram_addr.h
> memory: replace cpu_physical_memory_reset_dirty() with test-and-clear
> memory: make cpu_physical_memory_sync_dirty_bitmap() fully atomic
>
> Victor CLEMENT (3):
> icount: implement a new icount_sleep mode toggleing real-time cpu sleep
> icount: add sleep parameter to the icount option to set icount_sleep mode
> icount: print a warning if there is no more deadline in sleep=no mode
>
> Makefile.target | 2 +
> arch_init.c | 46 +---
> bsd-user/main.c | 4 -
> cpus.c | 84 ++++---
> cputlb.c | 7 +-
> exec.c | 123 +++++-----
> hw/acpi/ich9.c | 4 +-
> hw/block/pflash_cfi01.c | 204 +++++++---------
> hw/char/parallel.c | 25 --
> hw/display/cg3.c | 2 +
> hw/display/exynos4210_fimd.c | 20 +-
> hw/display/framebuffer.c | 4 +
> hw/display/g364fb.c | 3 +-
> hw/display/sm501.c | 2 +
> hw/display/tcx.c | 3 +
> hw/display/vmware_vga.c | 2 +-
> hw/i386/pc.c | 21 --
> hw/isa/isa-bus.c | 26 +++
> hw/isa/lpc_ich9.c | 19 ++
> hw/pci-host/pam.c | 20 --
> hw/pci-host/piix.c | 44 ++--
> hw/pci-host/q35.c | 142 ++++++++++--
> hw/virtio/dataplane/vring.c | 2 +-
> hw/virtio/vhost.c | 9 +-
> include/exec/cputlb.h | 3 +-
> include/exec/exec-all.h | 6 +-
> include/exec/memattrs.h | 4 +-
> include/exec/memory.h | 25 +-
> include/exec/ram_addr.h | 138 +++++++----
> include/hw/acpi/ich9.h | 1 +
> include/hw/i386/ich9.h | 6 +
> include/hw/i386/pc.h | 1 -
> include/hw/pci-host/pam.h | 4 -
> include/hw/pci-host/q35.h | 36 ++-
> include/qemu/atomic.h | 12 +-
> include/qemu/bitmap.h | 4 +
> include/qemu/bitops.h | 14 ++
> include/qom/object.h | 18 ++
> include/standard-headers/linux/virtio_ring.h | 2 +-
> include/ui/console.h | 4 -
> kvm-all.c | 85 ++-----
> linux-headers/asm-x86/kvm.h | 14 +-
> linux-headers/linux/kvm.h | 7 +-
> linux-user/main.c | 4 -
> linux-user/mmap.c | 7 +-
> memory.c | 81 +++++--
> qdev-monitor.c | 18 +-
> qemu-nbd.c | 21 +-
> qemu-options.hx | 19 +-
> qom/object.c | 16 ++
> target-i386/Makefile.objs | 2 -
> target-i386/cpu-qom.h | 3 +
> target-i386/cpu.c | 47 +++-
> target-i386/cpu.h | 40 +++-
> target-i386/helper.c | 135 +++++++++--
> target-i386/helper.h | 12 +-
> target-i386/ioport-user.c | 60 -----
> target-i386/kvm.c | 2 +-
> target-i386/machine.c | 3 +
> target-i386/misc_helper.c | 59 +++--
> target-i386/seg_helper.c | 12 +-
> target-i386/smm_helper.c | 333 ++++++++++++++-------------
> target-i386/svm_helper.c | 230 +++++++++---------
> target-i386/translate.c | 12 +-
> tests/Makefile | 3 +
> tests/q35-test.c | 91 ++++++++
> translate-all.c | 20 +-
> translate-all.h | 7 +
> ui/console.c | 61 -----
> user-exec.c | 1 +
> util/bitmap.c | 83 +++++++
> vl.c | 9 +
> xen-hvm.c | 22 +-
> 73 files changed, 1560 insertions(+), 1055 deletions(-)
> delete mode 100644 target-i386/ioport-user.c
> create mode 100644 tests/q35-test.c
>
The final rebase to origin/master broke qtest. Sent one patch for an
existing breakage, but this pull request has to be redone as well.
Paolo
prev parent reply other threads:[~2015-06-05 15:30 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-05 15:15 [Qemu-devel] [PULL 00/62] KVM, dirty bitmap, build system, SMM, icount changes for 2015-06-05 Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 01/62] Move parallel_hds_isa_init to hw/isa/isa-bus.c Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 02/62] ppc: add helpful message when KVM fails to start VCPU Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 03/62] qemu-nbd: Switch to qemu_set_fd_handler Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 04/62] exec: optimize phys_page_set_level Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 05/62] Makefile.target: set master BUILD_DIR Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 06/62] memory: the only dirty memory flag for users is DIRTY_MEMORY_VGA Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 07/62] g364fb: remove pointless call to memory_region_set_coalescing Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 08/62] display: enable DIRTY_MEMORY_VGA tracking explicitly Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 09/62] display: add memory_region_sync_dirty_bitmap calls Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 10/62] memory: differentiate memory_region_is_logging and memory_region_get_dirty_log_mask Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 11/62] memory: prepare for multiple bits in the dirty log mask Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 12/62] framebuffer: check memory_region_is_logging Paolo Bonzini
2015-07-10 15:44 ` Peter Maydell
2015-07-12 14:09 ` Paolo Bonzini
2015-07-12 22:02 ` Peter Maydell
2015-07-13 6:48 ` Paolo Bonzini
2015-07-13 8:55 ` Peter Maydell
2015-07-13 10:15 ` Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 13/62] ui/console: remove dpy_gfx_update_dirty Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 14/62] memory: track DIRTY_MEMORY_CODE in mr->dirty_log_mask Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 15/62] kvm: accept non-mapped memory in kvm_dirty_pages_log_change Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 16/62] memory: include DIRTY_MEMORY_MIGRATION in the dirty log mask Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 17/62] kvm: remove special handling of " Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 18/62] ram_addr: tweaks to xen_modified_memory Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 19/62] exec: use memory_region_get_dirty_log_mask to optimize dirty tracking Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 20/62] exec: move functions to translate-all.h Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 21/62] translate-all: remove unnecessary argument to tb_invalidate_phys_range Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 22/62] cputlb: remove useless arguments to tlb_unprotect_code_phys, rename Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 23/62] translate-all: make less of tb_invalidate_phys_page_range depend on is_cpu_write_access Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 24/62] exec: pass client mask to cpu_physical_memory_set_dirty_range Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 25/62] exec: invert return value of cpu_physical_memory_get_clean, rename Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 26/62] exec: only check relevant bitmaps for cleanliness Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 27/62] memory: do not touch code dirty bitmap unless TCG is enabled Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 28/62] bitmap: add atomic set functions Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 29/62] bitmap: add atomic test and clear Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 30/62] memory: use atomic ops for setting dirty memory bits Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 31/62] migration: move dirty bitmap sync to ram_addr.h Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 32/62] memory: replace cpu_physical_memory_reset_dirty() with test-and-clear Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 33/62] memory: make cpu_physical_memory_sync_dirty_bitmap() fully atomic Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 34/62] memory: use mr->ram_addr in "is this RAM?" assertions Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 35/62] icount: implement a new icount_sleep mode toggleing real-time cpu sleep Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 36/62] icount: add sleep parameter to the icount option to set icount_sleep mode Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 37/62] icount: print a warning if there is no more deadline in sleep=no mode Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 38/62] target-i386: introduce cpu_get_mem_attrs Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 39/62] target-i386: Use correct memory attributes for memory accesses Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 40/62] target-i386: Use correct memory attributes for ioport accesses Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 41/62] target-i386: mask NMIs on entry to SMM Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 42/62] target-i386: set G=1 in SMM big real mode selectors Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 43/62] target-i386: wake up processors that receive an SMI Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 44/62] pflash_cfi01: change big-endian property to BIT type Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 45/62] pflash_cfi01: change to new-style MMIO accessors Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 46/62] pflash_cfi01: add secure property Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 47/62] vl: allow full-blown QemuOpts syntax for -global Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 48/62] qom: add object_property_add_const_link Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 49/62] vl: run "late" notifiers immediately Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 50/62] target-i386: create a separate AddressSpace for each CPU Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 51/62] hw/i386: add a separate region that tracks the SMRAME bit Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 52/62] target-i386: use memory API to implement SMRAM Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 53/62] hw/i386: remove smram_update Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 54/62] q35: implement high SMRAM Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 55/62] q35: fix ESMRAMC default Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 56/62] q35: add config space wmask for SMRAM and ESMRAMC Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 57/62] q35: implement SMRAM.D_LCK Paolo Bonzini
2015-06-05 15:15 ` [Qemu-devel] [PULL 58/62] q35: add test for SMRAM.D_LCK Paolo Bonzini
2015-06-05 15:16 ` [Qemu-devel] [PULL 59/62] q35: implement TSEG Paolo Bonzini
2015-06-05 15:16 ` [Qemu-devel] [PULL 60/62] ich9: implement SMI_LOCK Paolo Bonzini
2015-06-05 15:16 ` [Qemu-devel] [PULL 61/62] atomics: add explicit compiler fence in __atomic memory barriers Paolo Bonzini
2015-06-05 15:16 ` [Qemu-devel] [PULL 62/62] update Linux headers from kvm/next Paolo Bonzini
2015-06-05 15:30 ` Paolo Bonzini [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5571C085.2020408@redhat.com \
--to=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).