From nobody Sat Apr 11 23:02:53 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1773081363; cv=none; d=zohomail.com; s=zohoarc; b=Pzbl6SbnU4WdFGR5IOMutofaM0C36JSsS0CZRSueqOUgBc/3dB1xUGDVJBN2JMvN6cL3jy8dFf+bH+NJFUlEBpS17e9T4tNuLwfrkiCl1NRYuiW2svCXA2hznu37HOUnrmjUHYH9CzKy6cj5/SMtdPkhtQyl+o0X/HGnWBwb+Vk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773081363; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=xA3KiBRZDEy+tGK0VBSBg6K/vS9OJsxKrmQTjGkh/tM=; b=Sx9lrqAADX5MEp0dIjGgjXjJ1/OAh3QDv4vekpPT3PwMXRH5Ezkb0Or4LDbjDwrLoDIcQLVPb6r8dtyGlZwBs1gCS91GdmyJppz7Kg6W5g/D7NY7K1RVM0Yx/y1ROb4aYX/Qto41YNHSRbctRKAL2GOp/SX3uU84TWFko7/1R6k= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1773081363796445.0404147515202; Mon, 9 Mar 2026 11:36:03 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.1249619.1547081 (Exim 4.92) (envelope-from ) id 1vzfSH-0007Yj-80; Mon, 09 Mar 2026 18:35:49 +0000 Received: by outflank-mailman (output) from mailman id 1249619.1547081; Mon, 09 Mar 2026 18:35:49 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vzfSH-0007Ya-46; Mon, 09 Mar 2026 18:35:49 +0000 Received: by outflank-mailman (input) for mailman id 1249619; Mon, 09 Mar 2026 18:35:47 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vzfSF-0007JG-Hn for xen-devel@lists.xenproject.org; Mon, 09 Mar 2026 18:35:47 +0000 Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [2a00:1450:4864:20::329]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c9a96f7e-1be6-11f1-b164-2bf370ae4941; Mon, 09 Mar 2026 19:35:46 +0100 (CET) Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-4853e1ce427so12503795e9.3 for ; Mon, 09 Mar 2026 11:35:46 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48541a6bb86sm9367755e9.1.2026.03.09.11.35.44 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 09 Mar 2026 11:35:45 -0700 (PDT) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c9a96f7e-1be6-11f1-b164-2bf370ae4941 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1773081346; x=1773686146; darn=lists.xenproject.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=xA3KiBRZDEy+tGK0VBSBg6K/vS9OJsxKrmQTjGkh/tM=; b=vHxbDQhCv7R2l0m7nn8ppI10Jd/khXsW9VNS7owUnYjELJP8p9FXXUZFAJO8qzhfi8 Ss5YV05uGA/L7PlV4CUAB2psoUGlK9x2IhRzPuxagzIVfrC67UQgsUDlC+8iew/GnQNE bw05RPSVofq6tmTCegQw+vUq1Fg+GvrGYadn5Xam/SPwklpS+ymL5iVmxC7U8bJjQkys TylXDZijOTjF7bcu7+J/fMnS/ftHFsO4sVtjMgvSJx6AvyupRW+ssDM++jXK+rBJYnfg P3myScAacVjpluoKtrkzghoiDrfHUp91ZQzwvpwH6BcFhF414pso0Wu9Wq4KT0roPcxA WULg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773081346; x=1773686146; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=xA3KiBRZDEy+tGK0VBSBg6K/vS9OJsxKrmQTjGkh/tM=; b=fc5+B01u0CIn1N7KIQmwd3puovGFjfOBUuG5YJYTkfnAD6X8PufBq8Msud8MoFSwm7 qLpkfWVRYrVrqEqSvJEjhRmhv5S/9kjQOOxN6hhXzrekVInFxwd2zAVKTnPOUuHrMIO0 TsGqkqmfDDppk7QimdUF2YGckvwi51Z83vPkGJS3j2frPf98O9p693cDnaA4kwHeFNpe jyARv3jmujUziYOb8LBk3bfNm+SnK8ZEt+BtDzyQVeAikM29IPH4AFdcKfGSQnCjUJ2S PMtYhYI4p+JXaF5fQOCdeJziAApCzTZTECiOmoJiW3mvnLZGu727n717wjicXs7c7xWL V+4Q== X-Forwarded-Encrypted: i=1; AJvYcCVJSHVdT5pGyK1v4+rWLQ2n3o39JqCGP+XQtU/SoC8xVscYxGxO14rZU0KoEaLvCY6w8npw3AwwAbs=@lists.xenproject.org X-Gm-Message-State: AOJu0YyH3eJiNbf7xywiJhRY80DwjRlEHNs/feEPrU/9ZTo6R5eqE1Iw DzyMkF94SpE5WTjZO9q3ClBDX05a5QDycXVrnGNnrcTq0NJVICjcZtkYVnLtUO8/lKPRxpzSURs MaUV6wOI= X-Gm-Gg: ATEYQzw7oDthjzhXcXUX5xR263W9mMENckvqHJg69G/a1IfYs/JsesJiZbujWVYb597 O78NbSSAa7NNsJdHji9zNtUa5NEo5fEPvTijGN5vosPG3H/Gl3F4z/Bz3TayXfTkmqpjY4hr8yU eOKAOAGksfnn4COHSQkVPlCfcvyN6BKU6wUn6JmJjFiPn/YAdjeK9JXgDY//LWJh5PSB8NQTFuc mRaLN4dGOor9DC2syZ6+5pDhGFMasMke3Q8o82iIwY+QV9yAY/EUscaSlfA6wV6rzuaJeAX2OfI aw6QBqIMBqBHYm/LN8ngs3GDVDl971r8u0wr+Zh147ZyvHvKwWoIzvNdtEuVmaOUNLK1ha+SunB kYV61aHopIH69RbtBwpPv3lQ4OWfwuZCMAqX+XeWDkNFSutcv2vibdiUYhETD1bJSdvKPKGMXLj tULYJO5CVwr/KLC+sAEwvMTAFrBcdMezivCkEurt4iZdeC+6wllBgVYVdGXVCnNmbEwmcum0j/ X-Received: by 2002:a05:600c:3b8e:b0:485:35a4:939c with SMTP id 5b1f17b1804b1-48535a4a188mr113829175e9.29.1773081346102; Mon, 09 Mar 2026 11:35:46 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Mohamed Mediouni , Anthony PERARD , xen-devel@lists.xenproject.org, Mark Cave-Ayland , Peter Xu , Richard Henderson , Pierrick Bouvier , Paolo Bonzini , "Edgar E. Iglesias" , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Stefano Stabellini , Akihiko Odaki Subject: [PATCH v2 1/4] system/ramblock: Constify various RAMBlock arguments Date: Mon, 9 Mar 2026 19:35:32 +0100 Message-ID: <20260309183536.88976-2-philmd@linaro.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260309183536.88976-1-philmd@linaro.org> References: <20260309183536.88976-1-philmd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1773081365372154100 Mark the RAMBlock structure const when is only accessed read-only. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier Reviewed-by: Peter Xu --- include/system/ramblock.h | 28 ++++++++++++++-------------- stubs/physmem.c | 2 +- stubs/ram-block.c | 6 +++--- system/physmem.c | 28 ++++++++++++++-------------- 4 files changed, 32 insertions(+), 32 deletions(-) diff --git a/include/system/ramblock.h b/include/system/ramblock.h index e9f58ac0457..4435f8d55fe 100644 --- a/include/system/ramblock.h +++ b/include/system/ramblock.h @@ -154,26 +154,26 @@ RAMBlock *qemu_ram_block_by_name(const char *name); */ RAMBlock *qemu_ram_block_from_host(void *ptr, bool round_offset, ram_addr_t *offset); -ram_addr_t qemu_ram_block_host_offset(RAMBlock *rb, void *host); +ram_addr_t qemu_ram_block_host_offset(const RAMBlock *rb, void *host); void qemu_ram_set_idstr(RAMBlock *block, const char *name, DeviceState *de= v); void qemu_ram_unset_idstr(RAMBlock *block); -const char *qemu_ram_get_idstr(RAMBlock *rb); -void *qemu_ram_get_host_addr(RAMBlock *rb); -ram_addr_t qemu_ram_get_offset(RAMBlock *rb); -ram_addr_t qemu_ram_get_fd_offset(RAMBlock *rb); -ram_addr_t qemu_ram_get_used_length(RAMBlock *rb); -ram_addr_t qemu_ram_get_max_length(RAMBlock *rb); -bool qemu_ram_is_shared(RAMBlock *rb); -bool qemu_ram_is_noreserve(RAMBlock *rb); -bool qemu_ram_is_uf_zeroable(RAMBlock *rb); +const char *qemu_ram_get_idstr(const RAMBlock *rb); +void *qemu_ram_get_host_addr(const RAMBlock *rb); +ram_addr_t qemu_ram_get_offset(const RAMBlock *rb); +ram_addr_t qemu_ram_get_fd_offset(const RAMBlock *rb); +ram_addr_t qemu_ram_get_used_length(const RAMBlock *rb); +ram_addr_t qemu_ram_get_max_length(const RAMBlock *rb); +bool qemu_ram_is_shared(const RAMBlock *rb); +bool qemu_ram_is_noreserve(const RAMBlock *rb); +bool qemu_ram_is_uf_zeroable(const RAMBlock *rb); void qemu_ram_set_uf_zeroable(RAMBlock *rb); -bool qemu_ram_is_migratable(RAMBlock *rb); +bool qemu_ram_is_migratable(const RAMBlock *rb); void qemu_ram_set_migratable(RAMBlock *rb); void qemu_ram_unset_migratable(RAMBlock *rb); -bool qemu_ram_is_named_file(RAMBlock *rb); -int qemu_ram_get_fd(RAMBlock *rb); +bool qemu_ram_is_named_file(const RAMBlock *rb); +int qemu_ram_get_fd(const RAMBlock *rb); =20 -size_t qemu_ram_pagesize(RAMBlock *block); +size_t qemu_ram_pagesize(const RAMBlock *block); size_t qemu_ram_pagesize_largest(void); #include "exec/target_page.h" #include "exec/hwaddr.h" diff --git a/stubs/physmem.c b/stubs/physmem.c index 14667f2bd8f..2eca06ab6d6 100644 --- a/stubs/physmem.c +++ b/stubs/physmem.c @@ -7,7 +7,7 @@ RAMBlock *qemu_ram_block_from_host(void *ptr, bool round_of= fset, return NULL; } =20 -int qemu_ram_get_fd(RAMBlock *rb) +int qemu_ram_get_fd(const RAMBlock *rb) { return -1; } diff --git a/stubs/ram-block.c b/stubs/ram-block.c index 8790a59593e..1c79e447ff0 100644 --- a/stubs/ram-block.c +++ b/stubs/ram-block.c @@ -3,17 +3,17 @@ #include "system/ramblock.h" #include "system/memory.h" =20 -void *qemu_ram_get_host_addr(RAMBlock *rb) +void *qemu_ram_get_host_addr(const RAMBlock *rb) { return 0; } =20 -ram_addr_t qemu_ram_get_offset(RAMBlock *rb) +ram_addr_t qemu_ram_get_offset(const RAMBlock *rb) { return 0; } =20 -ram_addr_t qemu_ram_get_used_length(RAMBlock *rb) +ram_addr_t qemu_ram_get_used_length(const RAMBlock *rb) { return 0; } diff --git a/system/physmem.c b/system/physmem.c index 7eecd818770..e5390d09bef 100644 --- a/system/physmem.c +++ b/system/physmem.c @@ -1859,48 +1859,48 @@ static void qemu_ram_setup_dump(void *addr, ram_add= r_t size) } } =20 -const char *qemu_ram_get_idstr(RAMBlock *rb) +const char *qemu_ram_get_idstr(const RAMBlock *rb) { return rb->idstr; } =20 -void *qemu_ram_get_host_addr(RAMBlock *rb) +void *qemu_ram_get_host_addr(const RAMBlock *rb) { return rb->host; } =20 -ram_addr_t qemu_ram_get_offset(RAMBlock *rb) +ram_addr_t qemu_ram_get_offset(const RAMBlock *rb) { return rb->offset; } =20 -ram_addr_t qemu_ram_get_fd_offset(RAMBlock *rb) +ram_addr_t qemu_ram_get_fd_offset(const RAMBlock *rb) { return rb->fd_offset; } =20 -ram_addr_t qemu_ram_get_used_length(RAMBlock *rb) +ram_addr_t qemu_ram_get_used_length(const RAMBlock *rb) { return rb->used_length; } =20 -ram_addr_t qemu_ram_get_max_length(RAMBlock *rb) +ram_addr_t qemu_ram_get_max_length(const RAMBlock *rb) { return rb->max_length; } =20 -bool qemu_ram_is_shared(RAMBlock *rb) +bool qemu_ram_is_shared(const RAMBlock *rb) { return rb->flags & RAM_SHARED; } =20 -bool qemu_ram_is_noreserve(RAMBlock *rb) +bool qemu_ram_is_noreserve(const RAMBlock *rb) { return rb->flags & RAM_NORESERVE; } =20 /* Note: Only set at the start of postcopy */ -bool qemu_ram_is_uf_zeroable(RAMBlock *rb) +bool qemu_ram_is_uf_zeroable(const RAMBlock *rb) { return rb->flags & RAM_UF_ZEROPAGE; } @@ -1910,7 +1910,7 @@ void qemu_ram_set_uf_zeroable(RAMBlock *rb) rb->flags |=3D RAM_UF_ZEROPAGE; } =20 -bool qemu_ram_is_migratable(RAMBlock *rb) +bool qemu_ram_is_migratable(const RAMBlock *rb) { return rb->flags & RAM_MIGRATABLE; } @@ -1925,12 +1925,12 @@ void qemu_ram_unset_migratable(RAMBlock *rb) rb->flags &=3D ~RAM_MIGRATABLE; } =20 -bool qemu_ram_is_named_file(RAMBlock *rb) +bool qemu_ram_is_named_file(const RAMBlock *rb) { return rb->flags & RAM_NAMED_FILE; } =20 -int qemu_ram_get_fd(RAMBlock *rb) +int qemu_ram_get_fd(const RAMBlock *rb) { return rb->fd; } @@ -1987,7 +1987,7 @@ static char *cpr_name(MemoryRegion *mr) } } =20 -size_t qemu_ram_pagesize(RAMBlock *rb) +size_t qemu_ram_pagesize(const RAMBlock *rb) { return rb->page_size; } @@ -2772,7 +2772,7 @@ void *qemu_map_ram_ptr(RAMBlock *ram_block, ram_addr_= t addr) } =20 /* Return the offset of a hostpointer within a ramblock */ -ram_addr_t qemu_ram_block_host_offset(RAMBlock *rb, void *host) +ram_addr_t qemu_ram_block_host_offset(const RAMBlock *rb, void *host) { ram_addr_t res =3D (uint8_t *)host - (uint8_t *)rb->host; assert((uintptr_t)host >=3D (uintptr_t)rb->host); --=20 2.53.0