qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: qemu-devel@nongnu.org, Peter Maydell <peter.maydell@linaro.org>
Cc: "Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Jason Herne" <jjherne@linux.ibm.com>,
	"Stefano Stabellini" <sstabellini@kernel.org>,
	"Stefano Garzarella" <sgarzare@redhat.com>,
	xen-devel@lists.xenproject.org,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Ilya Leoshkevich" <iii@linux.ibm.com>,
	"Anthony PERARD" <anthony@xenproject.org>,
	"Paul Durrant" <paul@xen.org>,
	"Eric Farman" <farman@linux.ibm.com>,
	"Marcelo Tosatti" <mtosatti@redhat.com>,
	"Halil Pasic" <pasic@linux.ibm.com>,
	"Matthew Rosato" <mjrosato@linux.ibm.com>,
	"Reinoud Zandijk" <reinoud@netbsd.org>,
	"Zhao Liu" <zhao1.liu@intel.com>,
	"David Woodhouse" <dwmw2@infradead.org>,
	"Christian Borntraeger" <borntraeger@linux.ibm.com>,
	"Sunil Muthuswamy" <sunilmut@microsoft.com>,
	kvm@vger.kernel.org, "Michael S. Tsirkin" <mst@redhat.com>,
	"Peter Xu" <peterx@redhat.com>, "Thomas Huth" <thuth@redhat.com>,
	qemu-s390x@nongnu.org,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	"Richard Henderson" <richard.henderson@linaro.org>,
	"David Hildenbrand" <david@redhat.com>
Subject: [PATCH v2 15/17] system/physmem: Inline cpu_physical_memory_rw() and remove it
Date: Tue, 30 Sep 2025 06:13:23 +0200	[thread overview]
Message-ID: <20250930041326.6448-16-philmd@linaro.org> (raw)
In-Reply-To: <20250930041326.6448-1-philmd@linaro.org>

After inlining the legacy cpu_physical_memory_rw() in the 2 functions
using it (cpu_physical_memory_read and cpu_physical_memory_write), we
removed all its use: remove it.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
 docs/devel/loads-stores.rst            |  4 +---
 scripts/coccinelle/exec_rw_const.cocci | 22 ----------------------
 include/exec/cpu-common.h              |  2 --
 system/physmem.c                       | 13 ++++---------
 4 files changed, 5 insertions(+), 36 deletions(-)

diff --git a/docs/devel/loads-stores.rst b/docs/devel/loads-stores.rst
index f9b565da57a..c906c6509ee 100644
--- a/docs/devel/loads-stores.rst
+++ b/docs/devel/loads-stores.rst
@@ -460,10 +460,8 @@ For new code they are better avoided:
 
 ``cpu_physical_memory_write``
 
-``cpu_physical_memory_rw``
-
 Regexes for git grep:
- - ``\<cpu_physical_memory_\(read\|write\|rw\)\>``
+ - ``\<cpu_physical_memory_\(read\|write\)\>``
 
 ``cpu_memory_rw_debug``
 ~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/scripts/coccinelle/exec_rw_const.cocci b/scripts/coccinelle/exec_rw_const.cocci
index 1a202969519..4c02c94e04e 100644
--- a/scripts/coccinelle/exec_rw_const.cocci
+++ b/scripts/coccinelle/exec_rw_const.cocci
@@ -21,13 +21,6 @@ expression E1, E2, E3, E4, E5;
 + address_space_rw(E1, E2, E3, E4, E5, true)
 |
 
-- cpu_physical_memory_rw(E1, E2, E3, 0)
-+ cpu_physical_memory_rw(E1, E2, E3, false)
-|
-- cpu_physical_memory_rw(E1, E2, E3, 1)
-+ cpu_physical_memory_rw(E1, E2, E3, true)
-|
-
 - cpu_physical_memory_map(E1, E2, 0)
 + cpu_physical_memory_map(E1, E2, false)
 |
@@ -62,18 +55,6 @@ symbol true, false;
 + address_space_write(E1, E2, E3, E4, E5)
 )
 
-// Avoid uses of cpu_physical_memory_rw() with a constant is_write argument.
-@@
-expression E1, E2, E3;
-@@
-(
-- cpu_physical_memory_rw(E1, E2, E3, false)
-+ cpu_physical_memory_read(E1, E2, E3)
-|
-- cpu_physical_memory_rw(E1, E2, E3, true)
-+ cpu_physical_memory_write(E1, E2, E3)
-)
-
 // Remove useless cast
 @@
 expression E1, E2, E3, E4, E5, E6;
@@ -93,9 +74,6 @@ type T;
 + address_space_write_rom(E1, E2, E3, E4, E5)
 |
 
-- cpu_physical_memory_rw(E1, (T *)(E2), E3, E4)
-+ cpu_physical_memory_rw(E1, E2, E3, E4)
-|
 - cpu_physical_memory_read(E1, (T *)(E2), E3)
 + cpu_physical_memory_read(E1, E2, E3)
 |
diff --git a/include/exec/cpu-common.h b/include/exec/cpu-common.h
index 6e8cb530f6e..910e1c2afb9 100644
--- a/include/exec/cpu-common.h
+++ b/include/exec/cpu-common.h
@@ -131,8 +131,6 @@ void cpu_address_space_init(CPUState *cpu, int asidx,
  */
 void cpu_address_space_destroy(CPUState *cpu, int asidx);
 
-void cpu_physical_memory_rw(hwaddr addr, void *buf,
-                            hwaddr len, bool is_write);
 void cpu_physical_memory_read(hwaddr addr, void *buf, hwaddr len);
 void cpu_physical_memory_write(hwaddr addr, const void *buf, hwaddr len);
 void *cpu_physical_memory_map(hwaddr addr,
diff --git a/system/physmem.c b/system/physmem.c
index 6d6bc449376..a654b2af2a3 100644
--- a/system/physmem.c
+++ b/system/physmem.c
@@ -3181,21 +3181,16 @@ MemTxResult address_space_set(AddressSpace *as, hwaddr addr,
     return error;
 }
 
-void cpu_physical_memory_rw(hwaddr addr, void *buf,
-                            hwaddr len, bool is_write)
-{
-    address_space_rw(&address_space_memory, addr, MEMTXATTRS_UNSPECIFIED,
-                     buf, len, is_write);
-}
-
 void cpu_physical_memory_read(hwaddr addr, void *buf, hwaddr len)
 {
-    cpu_physical_memory_rw(addr, buf, len, false);
+    address_space_read(&address_space_memory, addr,
+                       MEMTXATTRS_UNSPECIFIED, buf, len);
 }
 
 void cpu_physical_memory_write(hwaddr addr, const void *buf, hwaddr len)
 {
-    cpu_physical_memory_rw(addr, (void *)buf, len, true);
+    address_space_write(&address_space_memory, addr,
+                        MEMTXATTRS_UNSPECIFIED, buf, len);
 }
 
 /* used for ROM loading : can write in RAM and ROM */
-- 
2.51.0



  parent reply	other threads:[~2025-09-30  4:17 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-30  4:13 [PATCH v2 00/17] system/physmem: Remove cpu_physical_memory _is_io() and _rw() Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 01/17] docs/devel/loads-stores: Stop mentioning cpu_physical_memory_write_rom() Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 02/17] system/memory: Better describe @plen argument of flatview_translate() Philippe Mathieu-Daudé
2025-09-30  4:51   ` Thomas Huth
2025-09-30  4:13 ` [PATCH v2 03/17] system/memory: Factor address_space_is_io() out Philippe Mathieu-Daudé
2025-09-30  5:00   ` Thomas Huth
2025-09-30  4:13 ` [PATCH v2 04/17] target/i386/arch_memory_mapping: Use address_space_memory_is_io() Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 05/17] hw/s390x/sclp: Use address_space_memory_is_io() in sclp_service_call() Philippe Mathieu-Daudé
2025-09-30  4:43   ` Thomas Huth
2025-09-30  4:13 ` [PATCH v2 06/17] system/physmem: Remove cpu_physical_memory_is_io() Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 07/17] system/physmem: Pass address space argument to cpu_flush_icache_range() Philippe Mathieu-Daudé
2025-09-30  4:15   ` Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 08/17] hw/s390x/sclp: Replace [cpu_physical_memory -> address_space]_r/w() Philippe Mathieu-Daudé
2025-09-30  4:47   ` Thomas Huth
2025-09-30  4:13 ` [PATCH v2 09/17] target/s390x/mmu: Replace [cpu_physical_memory -> address_space]_rw() Philippe Mathieu-Daudé
2025-09-30  4:42   ` Thomas Huth
2025-09-30  4:13 ` [PATCH v2 10/17] target/i386/whpx: Replace legacy cpu_physical_memory_rw() call Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 11/17] target/i386/kvm: " Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 12/17] target/i386/nvmm: Inline cpu_physical_memory_rw() in nvmm_mem_callback Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 13/17] hw/xen/hvm: Inline cpu_physical_memory_rw() in rw_phys_req_item() Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 14/17] system/physmem: Un-inline cpu_physical_memory_read/write() Philippe Mathieu-Daudé
2025-09-30  5:02   ` Thomas Huth
2025-09-30  7:23     ` Philippe Mathieu-Daudé
2025-09-30  7:25       ` Philippe Mathieu-Daudé
2025-09-30  7:40       ` Thomas Huth
2025-09-30  4:13 ` Philippe Mathieu-Daudé [this message]
2025-09-30  4:13 ` [PATCH v2 16/17] hw/virtio/vhost: Replace legacy cpu_physical_memory_*map() calls Philippe Mathieu-Daudé
2025-09-30  7:38   ` Philippe Mathieu-Daudé
2025-09-30  4:13 ` [PATCH v2 17/17] hw/virtio/virtio: Replace legacy cpu_physical_memory_map() call Philippe Mathieu-Daudé

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=20250930041326.6448-16-philmd@linaro.org \
    --to=philmd@linaro.org \
    --cc=anthony@xenproject.org \
    --cc=borntraeger@linux.ibm.com \
    --cc=david@redhat.com \
    --cc=dwmw2@infradead.org \
    --cc=edgar.iglesias@gmail.com \
    --cc=farman@linux.ibm.com \
    --cc=iii@linux.ibm.com \
    --cc=jjherne@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=mjrosato@linux.ibm.com \
    --cc=mst@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=pasic@linux.ibm.com \
    --cc=paul@xen.org \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=peterx@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=reinoud@netbsd.org \
    --cc=richard.henderson@linaro.org \
    --cc=sgarzare@redhat.com \
    --cc=sstabellini@kernel.org \
    --cc=sunilmut@microsoft.com \
    --cc=thuth@redhat.com \
    --cc=xen-devel@lists.xenproject.org \
    --cc=zhao1.liu@intel.com \
    /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).