[PULL 00/41] Memory patches for 2025-10-07

Philippe Mathieu-Daudé posted 41 patches 1 month, 1 week ago
Only 2 patches received!
MAINTAINERS                               |   1 +
docs/devel/loads-stores.rst               |   6 +-
scripts/coccinelle/exec_rw_const.cocci    |  22 -
include/exec/cpu-common.h                 |  21 +-
include/system/memory.h                   |  11 +
include/system/physmem.h                  |  54 +++
include/system/ram_addr.h                 | 426 -------------------
include/system/ramblock.h                 |  27 +-
accel/kvm/kvm-all.c                       |   6 +-
accel/tcg/cputlb.c                        |  13 +-
hw/core/loader.c                          |   2 +-
hw/hyperv/hv-balloon-our_range_memslots.c |   1 +
hw/ppc/spapr.c                            |   1 -
hw/ppc/spapr_caps.c                       |   1 -
hw/ppc/spapr_pci.c                        |   1 -
hw/remote/memory.c                        |   1 -
hw/remote/proxy-memory-listener.c         |   1 -
hw/s390x/s390-stattrib-kvm.c              |   2 +-
hw/s390x/s390-stattrib.c                  |   2 +-
hw/s390x/s390-virtio-ccw.c                |   1 -
hw/s390x/sclp.c                           |  14 +-
hw/vfio/container-legacy.c                |  10 +-
hw/vfio/container.c                       |   5 +-
hw/vfio/listener.c                        |   2 +-
hw/vfio/spapr.c                           |   1 -
hw/virtio/vhost.c                         |   7 +-
hw/virtio/virtio-balloon.c                |   1 +
hw/virtio/virtio-mem.c                    |   2 +-
hw/virtio/virtio.c                        |  10 +-
hw/xen/xen-hvm-common.c                   |   8 +-
migration/ram.c                           |  81 +++-
system/memory.c                           |   9 +-
system/physmem.c                          | 475 +++++++++++++++++-----
target/arm/tcg/mte_helper.c               |   5 +-
target/i386/arch_memory_mapping.c         |  10 +-
target/i386/kvm/xen-emu.c                 |   4 +-
target/i386/nvmm/nvmm-all.c               |   5 +-
target/i386/whpx/whpx-all.c               |   7 +-
target/s390x/mmu_helper.c                 |   7 +-
system/memory_ldst.c.inc                  |   2 +-
tests/tsan/ignore.tsan                    |   4 +-
41 files changed, 636 insertions(+), 633 deletions(-)
create mode 100644 include/system/physmem.h
[PULL 00/41] Memory patches for 2025-10-07
Posted by Philippe Mathieu-Daudé 1 month, 1 week ago
The following changes since commit eb7abb4a719f93ddd56571bf91681044b4159399:

  hw/intc/loongarch_dintc: Set class_size for LoongArchDINTCClass (2025-10-06 13:54:50 -0700)

are available in the Git repository at:

  https://github.com/philmd/qemu.git tags/physmem-20251007

for you to fetch changes up to 9ccfde942d8b4e66eb012cf975dac16913875a2c:

  system/physmem: Extract API out of 'system/ram_addr.h' header (2025-10-07 03:37:40 +0200)

----------------------------------------------------------------
Memory patches

- Cleanups on RAMBlock API
- Cleanups on Physical Memory API
- Remove cpu_physical_memory_is_io()
- Remove cpu_physical_memory_rw()
- Legacy conversion [cpu_physical_memory -> address_space]_[un]map()

----------------------------------------------------------------

Philippe Mathieu-Daudé (40):
  system/ramblock: Remove obsolete comment
  system/ramblock: Move ram_block_is_pmem() declaration
  system/ramblock: Move ram_block_discard_*_range() declarations
  system/ramblock: Rename @start -> @offset in ram_block_discard_range()
  system/ramblock: Move RAMBlock helpers out of "system/ram_addr.h"
  docs/devel/loads-stores: Stop mentioning
    cpu_physical_memory_write_rom()
  system/memory: Factor address_space_is_io() out
  target/i386/arch_memory_mapping: Use address_space_memory_is_io()
  hw/s390x/sclp: Use address_space_memory_is_io() in sclp_service_call()
  system/physmem: Remove cpu_physical_memory_is_io()
  system/physmem: Pass address space argument to
    cpu_flush_icache_range()
  hw/s390x/sclp: Replace [cpu_physical_memory -> address_space]_r/w()
  target/s390x/mmu: Replace [cpu_physical_memory -> address_space]_rw()
  target/i386/whpx: Replace legacy cpu_physical_memory_rw() call
  target/i386/kvm: Replace legacy cpu_physical_memory_rw() call
  target/i386/nvmm: Inline cpu_physical_memory_rw() in nvmm_mem_callback
  hw/xen/hvm: Inline cpu_physical_memory_rw() in rw_phys_req_item()
  system/physmem: Un-inline cpu_physical_memory_read/write()
  system/physmem: Avoid cpu_physical_memory_rw when is_write is constant
  system/physmem: Remove legacy cpu_physical_memory_rw()
  hw/virtio/vhost: Replace legacy cpu_physical_memory_*map() calls
  hw/virtio/virtio: Replace legacy cpu_physical_memory_map() call
  system/ram_addr: Remove unnecessary 'exec/cpu-common.h' header
  accel/kvm: Include missing 'exec/target_page.h' header
  hw/s390x/s390-stattrib: Include missing 'exec/target_page.h' header
  hw/vfio/listener: Include missing 'exec/target_page.h' header
  target/arm/tcg/mte: Include missing 'exec/target_page.h' header
  hw: Remove unnecessary 'system/ram_addr.h' header
  system/physmem: Un-inline cpu_physical_memory_get_dirty_flag()
  system/physmem: Un-inline cpu_physical_memory_is_clean()
  system/physmem: Un-inline cpu_physical_memory_range_includes_clean()
  system/physmem: Un-inline cpu_physical_memory_set_dirty_flag()
  system/physmem: Un-inline cpu_physical_memory_set_dirty_range()
  system/physmem: Remove _WIN32 #ifdef'ry
  system/physmem: Un-inline cpu_physical_memory_set_dirty_lebitmap()
  system/physmem: Un-inline cpu_physical_memory_dirty_bits_cleared()
  system/physmem: Reduce cpu_physical_memory_clear_dirty_range() scope
  system/physmem: Reduce cpu_physical_memory_sync_dirty_bitmap() scope
  system/physmem: Drop 'cpu_' prefix in Physical Memory API
  system/physmem: Extract API out of 'system/ram_addr.h' header

Richard Henderson (1):
  system/memory: Split address_space_write_rom_internal

 MAINTAINERS                               |   1 +
 docs/devel/loads-stores.rst               |   6 +-
 scripts/coccinelle/exec_rw_const.cocci    |  22 -
 include/exec/cpu-common.h                 |  21 +-
 include/system/memory.h                   |  11 +
 include/system/physmem.h                  |  54 +++
 include/system/ram_addr.h                 | 426 -------------------
 include/system/ramblock.h                 |  27 +-
 accel/kvm/kvm-all.c                       |   6 +-
 accel/tcg/cputlb.c                        |  13 +-
 hw/core/loader.c                          |   2 +-
 hw/hyperv/hv-balloon-our_range_memslots.c |   1 +
 hw/ppc/spapr.c                            |   1 -
 hw/ppc/spapr_caps.c                       |   1 -
 hw/ppc/spapr_pci.c                        |   1 -
 hw/remote/memory.c                        |   1 -
 hw/remote/proxy-memory-listener.c         |   1 -
 hw/s390x/s390-stattrib-kvm.c              |   2 +-
 hw/s390x/s390-stattrib.c                  |   2 +-
 hw/s390x/s390-virtio-ccw.c                |   1 -
 hw/s390x/sclp.c                           |  14 +-
 hw/vfio/container-legacy.c                |  10 +-
 hw/vfio/container.c                       |   5 +-
 hw/vfio/listener.c                        |   2 +-
 hw/vfio/spapr.c                           |   1 -
 hw/virtio/vhost.c                         |   7 +-
 hw/virtio/virtio-balloon.c                |   1 +
 hw/virtio/virtio-mem.c                    |   2 +-
 hw/virtio/virtio.c                        |  10 +-
 hw/xen/xen-hvm-common.c                   |   8 +-
 migration/ram.c                           |  81 +++-
 system/memory.c                           |   9 +-
 system/physmem.c                          | 475 +++++++++++++++++-----
 target/arm/tcg/mte_helper.c               |   5 +-
 target/i386/arch_memory_mapping.c         |  10 +-
 target/i386/kvm/xen-emu.c                 |   4 +-
 target/i386/nvmm/nvmm-all.c               |   5 +-
 target/i386/whpx/whpx-all.c               |   7 +-
 target/s390x/mmu_helper.c                 |   7 +-
 system/memory_ldst.c.inc                  |   2 +-
 tests/tsan/ignore.tsan                    |   4 +-
 41 files changed, 636 insertions(+), 633 deletions(-)
 create mode 100644 include/system/physmem.h

-- 
2.51.0


Re: [PULL 00/41] Memory patches for 2025-10-07
Posted by Richard Henderson 1 month, 1 week ago
On 10/6/25 18:49, Philippe Mathieu-Daudé wrote:
> The following changes since commit eb7abb4a719f93ddd56571bf91681044b4159399:
> 
>    hw/intc/loongarch_dintc: Set class_size for LoongArchDINTCClass (2025-10-06 13:54:50 -0700)
> 
> are available in the Git repository at:
> 
>    https://github.com/philmd/qemu.git tags/physmem-20251007
> 
> for you to fetch changes up to 9ccfde942d8b4e66eb012cf975dac16913875a2c:
> 
>    system/physmem: Extract API out of 'system/ram_addr.h' header (2025-10-07 03:37:40 +0200)
> 
> ----------------------------------------------------------------
> Memory patches
> 
> - Cleanups on RAMBlock API
> - Cleanups on Physical Memory API
> - Remove cpu_physical_memory_is_io()
> - Remove cpu_physical_memory_rw()
> - Legacy conversion [cpu_physical_memory -> address_space]_[un]map()


Applied, thanks.  Please update https://wiki.qemu.org/ChangeLog/10.2 as appropriate.

r~

Re: [PULL 00/41] Memory patches for 2025-10-07
Posted by Philippe Mathieu-Daudé 1 month, 1 week ago
On 7/10/25 03:49, Philippe Mathieu-Daudé wrote:
> The following changes since commit eb7abb4a719f93ddd56571bf91681044b4159399:
> 
>    hw/intc/loongarch_dintc: Set class_size for LoongArchDINTCClass (2025-10-06 13:54:50 -0700)
> 
> are available in the Git repository at:
> 
>    https://github.com/philmd/qemu.git tags/physmem-20251007
> 
> for you to fetch changes up to 9ccfde942d8b4e66eb012cf975dac16913875a2c:

(update as 4db362f68c7cd28a6b1aa2f9ada68aa3556f9613)

> 
>    system/physmem: Extract API out of 'system/ram_addr.h' header (2025-10-07 03:37:40 +0200)
> 
> ----------------------------------------------------------------
> Memory patches
> 
> - Cleanups on RAMBlock API
> - Cleanups on Physical Memory API
> - Remove cpu_physical_memory_is_io()
> - Remove cpu_physical_memory_rw()
> - Legacy conversion [cpu_physical_memory -> address_space]_[un]map()
> 
> ----------------------------------------------------------------