From patchwork Mon Mar 17 18:34:00 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019883 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9A28DC35FF8 for ; Mon, 17 Mar 2025 18:40:06 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJL-0004sM-UT; Mon, 17 Mar 2025 14:35:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFIc-0004Rg-8h for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:34:56 -0400 Received: from mail-pl1-x636.google.com ([2607:f8b0:4864:20::636]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFII-000690-B5 for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:34:51 -0400 Received: by mail-pl1-x636.google.com with SMTP id d9443c01a7336-223fb0f619dso79446305ad.1 for ; Mon, 17 Mar 2025 11:34:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236466; x=1742841266; darn=nongnu.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=949DeBQijWmgHqYCdDdupcSTn3rDdND8nLqwkILEwEI=; b=tt5B/BgLLyJp+Jw29O2N7uGLl/bZ65baRl5DQq7mmfslBKZD4dAVBIvHkgzB8npTPt qRSm8OedK9p9kxq3PmTc6GepYwkNpICZ9rh8WTpF0c0wp5poKdMujC1Zo9aBFZ0aYe2M Idqj0oFKDXPg9jsd7NmwgbrdjM3Ot73FE0V+TwC+YRATtfHGg99r87aVcrgV429UF7cz ShG6+Ztf7gy+SFH3MDouqAWNS5py7TyadW86OxX5VYrTB56vJh0ULPMgI1s7hGu3MPUv XaNkT554H+OgcsYdH36mQDaJ2CKsTDdV3kLojUwQ7vYXujlKoXLYKAELqBeeAbt2qL3+ Elzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236466; x=1742841266; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=949DeBQijWmgHqYCdDdupcSTn3rDdND8nLqwkILEwEI=; b=eeWWO0qYxTDRKLjazmT+yaTegtLwEf9h5TFSoVa1h/Xi3lUMwjuQHPCAFMp5RwLp7k iggrsYEi7hxYVvckJehQ5TfWQ7ieRWo5gumONHD4W8fCusstO/CQrjNBcvAVhlE9fXQE SROvi0ZNj8yA5ZISUOLzJXpihZtOQn5UmuFrRMoTzk66rwRy0tKWUqunjzqoyUSdk15C YlAkJaOqicW1XPyY1mjVvBHZoP7HvxpW7uOuD6ijE0oQvZRMTmF6jOjnlPsBuTw0HEfu EwyJVOqcfZSTJVKuFmxr0Qogk+q8wiP/xDswGOm+FHet1+rQ72V+hILVIEktzIVrs/n7 NZ4w== X-Gm-Message-State: AOJu0Ywb/5JiTzi1Vn0Du/KoYEtKO17TYOoZ5UrEexQO+gTvuA+5pwsf TkqHViyfNFpj7UnJJw3Ngj5iS8q76NMyirIRDHAOzz5wLMNq0zMRXhfxfr/wIAWJQGp9uBy8Bw/ 0 X-Gm-Gg: ASbGncsGNeGuQUlW7xv2y6JPtdrQkKkbyUdNhvdErJbue8gIUheiFtPxUx9G5CSImGc M+AbxZYsK5nc0Yh2CTWgRON0K/5pP3lb67PNa2k6vbnIMe0oR8HVacVcb5/zrHZgkkQn+MTioII agNVdANDI1tuH0eOdxArcHcLI4UC4m6PsTUK7WYVzzAdNxN4OK+gz+8B7qwHlcszZbH0ElrJkUV gTV8rKjsPxJ0rrsgEqIjI8zhhE5GuP5vXEx8AF/dNh861FBwh8+JYOTlvCbW6WhxQfakEP7KrVK v32YSo6u4ZFScUjYf8pAPAE2ubyrLWz2L3rTzPgHqE3h X-Google-Smtp-Source: AGHT+IEMdkhHnCOZBQ+9EV0uYxPSw6/JcOSk+BrsDVDiw8khDcGewsFrIqa6c3AgQ8Es/TqwcULwNA== X-Received: by 2002:a05:6a00:139f:b0:736:9e40:13b1 with SMTP id d2e1a72fcca58-737224726e5mr14180634b3a.23.1742236465994; Mon, 17 Mar 2025 11:34:25 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:25 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 01/18] exec/tswap: target code can use TARGET_BIG_ENDIAN instead of target_words_bigendian() Date: Mon, 17 Mar 2025 11:34:00 -0700 Message-Id: <20250317183417.285700-2-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::636; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x636.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/tswap.h | 11 ++++++----- cpu-target.c | 1 + 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/include/exec/tswap.h b/include/exec/tswap.h index ecd4faef015..2683da0adb7 100644 --- a/include/exec/tswap.h +++ b/include/exec/tswap.h @@ -13,13 +13,14 @@ /** * target_words_bigendian: * Returns true if the (default) endianness of the target is big endian, - * false otherwise. Note that in target-specific code, you can use - * TARGET_BIG_ENDIAN directly instead. On the other hand, common - * code should normally never need to know about the endianness of the - * target, so please do *not* use this function unless you know very well - * what you are doing! + * false otherwise. Common code should normally never need to know about the + * endianness of the target, so please do *not* use this function unless you + * know very well what you are doing! */ bool target_words_bigendian(void); +#ifdef COMPILING_PER_TARGET +#define target_words_bigendian() TARGET_BIG_ENDIAN +#endif /* * If we're in target-specific code, we can hard-code the swapping diff --git a/cpu-target.c b/cpu-target.c index cae77374b38..519b0f89005 100644 --- a/cpu-target.c +++ b/cpu-target.c @@ -155,6 +155,7 @@ void cpu_abort(CPUState *cpu, const char *fmt, ...) abort(); } +#undef target_words_bigendian bool target_words_bigendian(void) { return TARGET_BIG_ENDIAN; From patchwork Mon Mar 17 18:34:01 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019851 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 8EF33C35FF8 for ; Mon, 17 Mar 2025 18:36:13 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJA-0004g6-Nr; Mon, 17 Mar 2025 14:35:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFIb-0004Rh-97 for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:34:53 -0400 Received: from mail-pl1-x629.google.com ([2607:f8b0:4864:20::629]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIK-00069A-Cq for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:34:52 -0400 Received: by mail-pl1-x629.google.com with SMTP id d9443c01a7336-224100e9a5cso92050255ad.2 for ; Mon, 17 Mar 2025 11:34:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236467; x=1742841267; darn=nongnu.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=fjQjYNlvDIsMbe7+veFF5h4s6vvln32m8yANkT1fS5Y=; b=eJkl6tj7Mf0qgBXZyWeSEn664gBkkPVYhym3c6JDanPW0eC3I05wdQcvHQBB5CYY+q 11o7An5hQXiyKFNnsy8lzkt/RHv98EdlyETRUhVunNzBTwIt/zr5+Mg8d43uHD8f25hz 9+C6G9qgPat0saN7OS6e4f6JCPNTHO59AExfOlaNqgOYbikvslP5GLF8EaT6uw68931r 9are3CeJCSHkLR56Xzz3r/Yf/YI4JzPND7IBm9UwZGZ9aH6pSnDLCPxThRmJU15BEBb6 Y5pXvaH8ttXhMB9SWyXZ4OO/yslqhv3+lmU6Ug7pyPvicHDc4T5JLKNWxkXV7JSLWijD ZZhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236467; x=1742841267; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fjQjYNlvDIsMbe7+veFF5h4s6vvln32m8yANkT1fS5Y=; b=LO0/ALOaAdJj9ktJs4ja5V0X/wPVBYpIGnD7liWo1RDgcA6Eif8PgKmP/bK1nuyA5P 9wvbJsf4rijU4gW5y23/AXd99giJMKvm1ZDIV72uXP8wLfFrQGr8Oga+4ZQ3LQ/Mf48t B94RhPOHCNTcyK09LiGp9+DnwpoEEXrZ798TxQsgG9SQEq5GlFOAq4nG6qqN8eOjTiD+ UIiLiJsCqGnMVJ8W2hNz7QJbRu1L5cIWDWhr3yhxgxGLECRo9Aba7K3mJoead8WBWLX+ 2Pd5nVEsGpH+OUpCMpMes4aoDfKU3x57WU6KsShx+RVYLUZFHbWKBGrf6GsnJyHEmRcE UpLg== X-Gm-Message-State: AOJu0YzEFAlUh/xN1LmpRxcMBcqfTuDLS7zKinOTMJrV6fltqOllz68l MkrII7WJrhRutKlQ+Nd2/tSUyPTgsw5CUFOZzhPDjmV5FOor1WzguUCwhOCoY7pkB7jdRohHdKs G X-Gm-Gg: ASbGncu4j7HBmEeAY5bTlfZdg70Wqm1zDfx6lLzpLp7wtNIihDswP5SKwHsz/HH0axR 51pxgqN1D3y5DyR6F5q7LBDS4a5bAITEQDl3vOpYj9MgumYk5czwtx+7WnhIuXjBfx63Dp8QzgM 9Oz0vpXNwe20a52zVUva5Dpxp2keKnHDhSXUlnw0o4arKEU+BFf6FlCEJEUkARKbNy9Z4EFxtB+ gcfWgm+U1YxeBbEOIGI6Udv6oA1h7c7Cb1aqPbGcqC79hQYhv9Up305FnfhJKUxJ7YYdxu+MyNd xp880f2pm/odXt1SpFKbidOPrU2S14VjvXeB0WHAWUAb X-Google-Smtp-Source: AGHT+IFi3tqJwrzQePDsXIvC4P2qzcui7bHazmhEI/k1ekPUyZPPBb0NOgqZr9PPYc71RHo1sxISkg== X-Received: by 2002:a05:6a20:4e08:b0:1f5:902e:1e97 with SMTP id adf61e73a8af0-1f5c133476fmr13616359637.41.1742236467105; Mon, 17 Mar 2025 11:34:27 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:26 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 02/18] exec/tswap: implement {ld, st}.*_p as functions instead of macros Date: Mon, 17 Mar 2025 11:34:01 -0700 Message-Id: <20250317183417.285700-3-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::629; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x629.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Defining functions allows to use them from common code, by not depending on TARGET_BIG_ENDIAN. Remove previous macros from exec/cpu-all.h. By moving them out of cpu-all.h, we'll be able to break dependency on cpu.h for memory related functions coming in next commits. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/cpu-all.h | 25 --------------- include/exec/tswap.h | 70 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+), 25 deletions(-) diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h index 8cd6c00cf89..e56c064d46f 100644 --- a/include/exec/cpu-all.h +++ b/include/exec/cpu-all.h @@ -38,31 +38,6 @@ #define BSWAP_NEEDED #endif -/* Target-endianness CPU memory access functions. These fit into the - * {ld,st}{type}{sign}{size}{endian}_p naming scheme described in bswap.h. - */ -#if TARGET_BIG_ENDIAN -#define lduw_p(p) lduw_be_p(p) -#define ldsw_p(p) ldsw_be_p(p) -#define ldl_p(p) ldl_be_p(p) -#define ldq_p(p) ldq_be_p(p) -#define stw_p(p, v) stw_be_p(p, v) -#define stl_p(p, v) stl_be_p(p, v) -#define stq_p(p, v) stq_be_p(p, v) -#define ldn_p(p, sz) ldn_be_p(p, sz) -#define stn_p(p, sz, v) stn_be_p(p, sz, v) -#else -#define lduw_p(p) lduw_le_p(p) -#define ldsw_p(p) ldsw_le_p(p) -#define ldl_p(p) ldl_le_p(p) -#define ldq_p(p) ldq_le_p(p) -#define stw_p(p, v) stw_le_p(p, v) -#define stl_p(p, v) stl_le_p(p, v) -#define stq_p(p, v) stq_le_p(p, v) -#define ldn_p(p, sz) ldn_le_p(p, sz) -#define stn_p(p, sz, v) stn_le_p(p, sz, v) -#endif - /* MMU memory access macros */ #if !defined(CONFIG_USER_ONLY) diff --git a/include/exec/tswap.h b/include/exec/tswap.h index 2683da0adb7..84060a49994 100644 --- a/include/exec/tswap.h +++ b/include/exec/tswap.h @@ -80,4 +80,74 @@ static inline void tswap64s(uint64_t *s) } } +/* Return ld{word}_{le,be}_p following target endianness. */ +#define LOAD_IMPL(word, args...) \ +do { \ + if (target_words_bigendian()) { \ + return glue(glue(ld, word), _be_p)(args); \ + } else { \ + return glue(glue(ld, word), _le_p)(args); \ + } \ +} while (0) + +static inline int lduw_p(const void *ptr) +{ + LOAD_IMPL(uw, ptr); +} + +static inline int ldsw_p(const void *ptr) +{ + LOAD_IMPL(sw, ptr); +} + +static inline int ldl_p(const void *ptr) +{ + LOAD_IMPL(l, ptr); +} + +static inline uint64_t ldq_p(const void *ptr) +{ + LOAD_IMPL(q, ptr); +} + +static inline uint64_t ldn_p(const void *ptr, int sz) +{ + LOAD_IMPL(n, ptr, sz); +} + +#undef LOAD_IMPL + +/* Call st{word}_{le,be}_p following target endianness. */ +#define STORE_IMPL(word, args...) \ +do { \ + if (target_words_bigendian()) { \ + glue(glue(st, word), _be_p)(args); \ + } else { \ + glue(glue(st, word), _le_p)(args); \ + } \ +} while (0) + + +static inline void stw_p(void *ptr, uint16_t v) +{ + STORE_IMPL(w, ptr, v); +} + +static inline void stl_p(void *ptr, uint32_t v) +{ + STORE_IMPL(l, ptr, v); +} + +static inline void stq_p(void *ptr, uint64_t v) +{ + STORE_IMPL(q, ptr, v); +} + +static inline void stn_p(void *ptr, int sz, uint64_t v) +{ + STORE_IMPL(n, ptr, sz, v); +} + +#undef STORE_IMPL + #endif /* TSWAP_H */ From patchwork Mon Mar 17 18:34:02 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019852 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 78820C282EC for ; Mon, 17 Mar 2025 18:37:09 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJA-0004gI-Nv; Mon, 17 Mar 2025 14:35:28 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFIc-0004Sd-Ir for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:34:56 -0400 Received: from mail-pl1-x634.google.com ([2607:f8b0:4864:20::634]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIK-00069Q-3r for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:34:53 -0400 Received: by mail-pl1-x634.google.com with SMTP id d9443c01a7336-22435603572so76549795ad.1 for ; Mon, 17 Mar 2025 11:34:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236468; x=1742841268; darn=nongnu.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=fcP4MFj0H7Fu3AxOxTbJlPG2KgbdJwiBtz5sSPdKZDU=; b=OFQKPkd8zQFT53AvZqrYGdg4tP1hRz+tGx6FSZO37U7P9bjp3kUHL92C+DqPYwSXrj Iinj3zILrnUwGrpALD8FN2UuFo8yrL4g6lPiQ4QT7SzzutydY9nRUEzuBpebdz1vvSbk oGou+mzw3Z0XN0XbSgZq9jtYCAYkoMBiDFwbeiPIDvPeNMnozr7DMH6LPKD6uDi3aWxU xoSXOn9b13nUS00d/V41UK84jiFKDBcHy5noOqT3N5B7yMbeZV5pV98Yh6jmd+LuFk8l a62CtwMrc29NPhXu/J9LSOmduf6AqIbc9a6QBFA2EXxqgWphbv7LScX9nReSbE91/r2/ ShMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236468; x=1742841268; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fcP4MFj0H7Fu3AxOxTbJlPG2KgbdJwiBtz5sSPdKZDU=; b=XgKuOyizD5GIzvpOdXkrpGIPVJ5d6b0fs5vCXszB9RoiKEIFEkwEZLj3R3J5bnMFmo Hw4oDF6vDWVl9hAO10ugfhwnfY0LHgW3D1Q5BjH6M+08EtIp2Vg1QFAeSe4aF2Wn1Z3J lwAmGxxw8WvZWbGFzMrZbZ8jHkUYAEM/WDZl8aCYhH/MbSM6nYIkmxAQkM8gok2tP+zO HQCGJB4qvSDqeQCBRqIGCiolvn0X3cV1+P/iHbFwSjnnmQaJyI8ofNmbEDPA0s9lCadp 59xVWN1L9Idelay5OPzGLUs3Q/6dY21rwNsRNMLvm+SZu9WgYw8/W86gl5ew//6U1ne4 xroA== X-Gm-Message-State: AOJu0YxvO6NYn/FvpXgSqre5v9kyfN3rzMaQTE2C1tQxOtiz4NwUTqnp jQ/lXCc1uIT9tpalX/YUJ5I0cCnOHcPZ4z8aGg/SbwoGu3jvQrrTPWUpPbQ0iKOI9GUMhhiqVtU 6 X-Gm-Gg: ASbGncu8XrHmBiUkkXwX5451za9M0YQG+FMgaMqZbsheRT7nEUwNTesh1VXgM2PNYBB A7fm2AQXIlWg+3CHLCsiSpEALlNr1rcdF9bRSdjfH6RZ3Kdk0Bmdw5Y1ue2TyCYcDmsYbvn4f1n R7Sxwrp0+eM0M20JmmyfAgVG+o0Phq9d7yJmdQMyXBDVaTiw1LBemWQQ8JzArRs24A9JGHDnMqe WSMla4nCL4SjvsJEUYg0EHFg6jNoE441/hN54lQShHDwKI/BAQ3LHWswXlhOJI+eZQPWjOwcgiF TZAH/NYNUsfN/FORHk8qZ5bS3oVnQcEljtS0pDkzTmSC X-Google-Smtp-Source: AGHT+IHQDcKJsv+Vb17cz20O+u5FV4YlvIefcRPItg35hxavnuYTE6e3UlOmHk58oIUa6dLl2/Rvnw== X-Received: by 2002:a05:6a00:13a6:b0:736:7175:f252 with SMTP id d2e1a72fcca58-7372239d970mr17183784b3a.14.1742236468325; Mon, 17 Mar 2025 11:34:28 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:27 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 03/18] exec/memory_ldst: extract memory_ldst declarations from cpu-all.h Date: Mon, 17 Mar 2025 11:34:02 -0700 Message-Id: <20250317183417.285700-4-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::634; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x634.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org They are now accessible through exec/memory.h instead, and we make sure all variants are available for common or target dependent code. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/cpu-all.h | 12 ------------ include/exec/memory_ldst.h.inc | 4 ---- 2 files changed, 16 deletions(-) diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h index e56c064d46f..0e8205818a4 100644 --- a/include/exec/cpu-all.h +++ b/include/exec/cpu-all.h @@ -44,18 +44,6 @@ #include "exec/hwaddr.h" -#define SUFFIX -#define ARG1 as -#define ARG1_DECL AddressSpace *as -#define TARGET_ENDIANNESS -#include "exec/memory_ldst.h.inc" - -#define SUFFIX _cached_slow -#define ARG1 cache -#define ARG1_DECL MemoryRegionCache *cache -#define TARGET_ENDIANNESS -#include "exec/memory_ldst.h.inc" - static inline void stl_phys_notdirty(AddressSpace *as, hwaddr addr, uint32_t val) { address_space_stl_notdirty(as, addr, val, diff --git a/include/exec/memory_ldst.h.inc b/include/exec/memory_ldst.h.inc index 92ad74e9560..7270235c600 100644 --- a/include/exec/memory_ldst.h.inc +++ b/include/exec/memory_ldst.h.inc @@ -19,7 +19,6 @@ * License along with this library; if not, see . */ -#ifdef TARGET_ENDIANNESS uint16_t glue(address_space_lduw, SUFFIX)(ARG1_DECL, hwaddr addr, MemTxAttrs attrs, MemTxResult *result); uint32_t glue(address_space_ldl, SUFFIX)(ARG1_DECL, @@ -34,7 +33,6 @@ void glue(address_space_stl, SUFFIX)(ARG1_DECL, hwaddr addr, uint32_t val, MemTxAttrs attrs, MemTxResult *result); void glue(address_space_stq, SUFFIX)(ARG1_DECL, hwaddr addr, uint64_t val, MemTxAttrs attrs, MemTxResult *result); -#else uint8_t glue(address_space_ldub, SUFFIX)(ARG1_DECL, hwaddr addr, MemTxAttrs attrs, MemTxResult *result); uint16_t glue(address_space_lduw_le, SUFFIX)(ARG1_DECL, @@ -63,9 +61,7 @@ void glue(address_space_stq_le, SUFFIX)(ARG1_DECL, hwaddr addr, uint64_t val, MemTxAttrs attrs, MemTxResult *result); void glue(address_space_stq_be, SUFFIX)(ARG1_DECL, hwaddr addr, uint64_t val, MemTxAttrs attrs, MemTxResult *result); -#endif #undef ARG1_DECL #undef ARG1 #undef SUFFIX -#undef TARGET_ENDIANNESS From patchwork Mon Mar 17 18:34:03 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019889 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 67C98C282EC for ; Mon, 17 Mar 2025 18:41:00 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJU-00051K-2V; Mon, 17 Mar 2025 14:35:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJ2-0004fo-9z for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:21 -0400 Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIV-00069i-5O for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:15 -0400 Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-223fd89d036so95207765ad.1 for ; Mon, 17 Mar 2025 11:34:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236469; x=1742841269; darn=nongnu.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=G6OuFeXnonCJBRRaCKlE2hD3nLeAbwsquVgoLJADjfc=; b=kyZaD9O34XeQwvVLg6Qsn+bY26KP+Go+mGSaMaupoF82dzz0jAY8cMqAjmvWRw6ZE1 F2pHgYFxaEpocV3C9SDo6jBipaVds0iK+SVURJ4JT3a2VPDNvoOHX8d/VUPLKxmzoRvb 6ru/uDn/i9M3tcPkLHCq1eezSFjOdjYSXmrEI0w4obnlgJKbx8vNCLjQjCjPVLr0PXlP ocMPYeVqXIv+TM2rHtJoOM8xSEaWKcRCua4r6UwYKcGKKKf4K0Xxd4Gctj42kjMin0Ag Dzls9xD51BR36hRF06z1DCRBb46fvHCJoPHN6A93rmc4DgzKaeIJD1L4DGzQha3vK9XR EF5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236469; x=1742841269; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=G6OuFeXnonCJBRRaCKlE2hD3nLeAbwsquVgoLJADjfc=; b=sMlcbDf1HWoekW1SPMqCDityNpQTXhk/bDmSiUHkA7VzLWHAY1o9kIjRPywA3N2oNQ CxnBfxoxmlcNLCwgjigYXom9r3Oat73yZQwEwhtgoC2AC2y31VnSYL65z/lnbNA1MUQ6 M2IZ9/8fNh26l10hk+gTUdkYAHHvAxIuDcTlwwVgoG131PbrT05RdzINyfogSJPthmdf V6ZD8i+u2ifmzOmDp2YWgw96x1hOiZUMl/Cxslz7h/ryc5ytDcbSe76VcRRlvPdG42A3 R0CtGnYlfsuVbQ8/3msBAnPWDooKYbQIKi7S2bvxhqd1kHFGWLWd9XnZUsgL/OoIdGpU hMYw== X-Gm-Message-State: AOJu0YwFY3B6/QY2HOXF5RfiuzVk1LmsMMn9m6PyPDY0e9kSfXabEgSc aY7oD6gdMRdQTtXbtYIhnXlfV+vr4+hsxn1hYg0/ff+eQyvDrYw0x3L5fU70qWe6hykhUJWXtqy s X-Gm-Gg: ASbGncsA1VhMrZjalTk0V7WvIXFkNicMmJB5SSbzK4x6k1WAfy2fPAIq4OWaaG88wTc mq8nnRuF/DQQ33tVCpyKQLUSLdvErrKFmVaSX2SNvM8EvyHn958WLw6uKeL0OcJ06GtZUejWDaH fT/rbwwN6sqqm5wdX9bZyTo4kkKjQZ/WMTvmlZEEf53seI5PxVxcAWzbHPiYV8zJ5IjNurViUfy 9yaDIV1v77LvAkz6BC/lvvRHUBp0G4+AHtBr1ISeNTGvIbyw9UU6FU7caXIYz4FeAw3tKTb8b7d SiUqDshoKOuSZYsSdcJ+DoLdAyrRn0/fcGaw1k1yhoCX X-Google-Smtp-Source: AGHT+IEuktxGhHzx6xs3EGzvKgpAVns4GkbvMlee+9okZ79gnYJTq9xN+P/LP5FdgPO0zhqsq/U9Fw== X-Received: by 2002:a05:6a00:1916:b0:736:51ab:7aed with SMTP id d2e1a72fcca58-7372240f242mr14927867b3a.16.1742236469458; Mon, 17 Mar 2025 11:34:29 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:29 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 04/18] exec/memory_ldst_phys: extract memory_ldst_phys declarations from cpu-all.h Date: Mon, 17 Mar 2025 11:34:03 -0700 Message-Id: <20250317183417.285700-5-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::635; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x635.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org They are now accessible through exec/memory.h instead, and we make sure all variants are available for common or target dependent code. Move stl_phys_notdirty function as well. Cached endianness agnostic version rely on st/ld*_p, which is available through tswap.h. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/cpu-all.h | 29 ----------------------------- include/exec/memory.h | 10 ++++++++++ include/exec/memory_ldst_phys.h.inc | 5 +---- 3 files changed, 11 insertions(+), 33 deletions(-) diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h index 0e8205818a4..902ca1f3c7b 100644 --- a/include/exec/cpu-all.h +++ b/include/exec/cpu-all.h @@ -38,35 +38,6 @@ #define BSWAP_NEEDED #endif -/* MMU memory access macros */ - -#if !defined(CONFIG_USER_ONLY) - -#include "exec/hwaddr.h" - -static inline void stl_phys_notdirty(AddressSpace *as, hwaddr addr, uint32_t val) -{ - address_space_stl_notdirty(as, addr, val, - MEMTXATTRS_UNSPECIFIED, NULL); -} - -#define SUFFIX -#define ARG1 as -#define ARG1_DECL AddressSpace *as -#define TARGET_ENDIANNESS -#include "exec/memory_ldst_phys.h.inc" - -/* Inline fast path for direct RAM access. */ -#define ENDIANNESS -#include "exec/memory_ldst_cached.h.inc" - -#define SUFFIX _cached -#define ARG1 cache -#define ARG1_DECL MemoryRegionCache *cache -#define TARGET_ENDIANNESS -#include "exec/memory_ldst_phys.h.inc" -#endif - /* page related stuff */ #include "exec/cpu-defs.h" #include "exec/target_page.h" diff --git a/include/exec/memory.h b/include/exec/memory.h index d09af58c971..da21e9150b5 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -21,6 +21,7 @@ #include "exec/memattrs.h" #include "exec/memop.h" #include "exec/ramlist.h" +#include "exec/tswap.h" #include "qemu/bswap.h" #include "qemu/queue.h" #include "qemu/int128.h" @@ -2732,6 +2733,12 @@ MemTxResult address_space_write_rom(AddressSpace *as, hwaddr addr, #define ARG1_DECL AddressSpace *as #include "exec/memory_ldst.h.inc" +static inline void stl_phys_notdirty(AddressSpace *as, hwaddr addr, uint32_t val) +{ + address_space_stl_notdirty(as, addr, val, + MEMTXATTRS_UNSPECIFIED, NULL); +} + #define SUFFIX #define ARG1 as #define ARG1_DECL AddressSpace *as @@ -2798,6 +2805,9 @@ static inline void address_space_stb_cached(MemoryRegionCache *cache, } } +#define ENDIANNESS +#include "exec/memory_ldst_cached.h.inc" + #define ENDIANNESS _le #include "exec/memory_ldst_cached.h.inc" diff --git a/include/exec/memory_ldst_phys.h.inc b/include/exec/memory_ldst_phys.h.inc index ecd678610d1..db67de75251 100644 --- a/include/exec/memory_ldst_phys.h.inc +++ b/include/exec/memory_ldst_phys.h.inc @@ -19,7 +19,6 @@ * License along with this library; if not, see . */ -#ifdef TARGET_ENDIANNESS static inline uint16_t glue(lduw_phys, SUFFIX)(ARG1_DECL, hwaddr addr) { return glue(address_space_lduw, SUFFIX)(ARG1, addr, @@ -55,7 +54,7 @@ static inline void glue(stq_phys, SUFFIX)(ARG1_DECL, hwaddr addr, uint64_t val) glue(address_space_stq, SUFFIX)(ARG1, addr, val, MEMTXATTRS_UNSPECIFIED, NULL); } -#else + static inline uint8_t glue(ldub_phys, SUFFIX)(ARG1_DECL, hwaddr addr) { return glue(address_space_ldub, SUFFIX)(ARG1, addr, @@ -139,9 +138,7 @@ static inline void glue(stq_be_phys, SUFFIX)(ARG1_DECL, hwaddr addr, uint64_t va glue(address_space_stq_be, SUFFIX)(ARG1, addr, val, MEMTXATTRS_UNSPECIFIED, NULL); } -#endif #undef ARG1_DECL #undef ARG1 #undef SUFFIX -#undef TARGET_ENDIANNESS From patchwork Mon Mar 17 18:34:04 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019885 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B57ACC28B28 for ; Mon, 17 Mar 2025 18:40:17 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJY-00053b-Qu; Mon, 17 Mar 2025 14:35:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJB-0004kk-RH for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:30 -0400 Received: from mail-pl1-x62d.google.com ([2607:f8b0:4864:20::62d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIV-0006AA-4m for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:29 -0400 Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-225fbdfc17dso32762515ad.3 for ; Mon, 17 Mar 2025 11:34:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236470; x=1742841270; darn=nongnu.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=wT5ohu0Ui7xrH+jgYqMJMpKemGPcZNvy7jzdyuAyzEs=; b=mMxRwKruY5z7V/XDapsbBm3uimBKs+VaKDFV5vgMOCrDNgAQIh138Bh3STmsUNgwaW +7lflS7MsI17sNBZ1VLuJMEePYrmOqj6eupWL/LH1382Rhpf8W4+frp3ivWnGlet7J0M oSkeYsT+SoQyqFvejHO5ugUzadfSBCsn4bLksf2qUDHSVp0PplDKw+NmIPaqf3n2zMuE 2e7EsXFVrC4Q4wZrtZbEV/O1YcVqH/AGv7U74mCxjQwW1XMwAFLnDgK7JOOtXm0Cw2VQ j+Zu8pG74kDXQFiYF/WrKcvPq/KE0ePk+44EwTKvp3sj6IpKdh9xT73schu0UayVzW5A Rfcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236470; x=1742841270; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wT5ohu0Ui7xrH+jgYqMJMpKemGPcZNvy7jzdyuAyzEs=; b=wugwDYb0toUuLRyQgAqixZGMUlbNpP6u1XUfzJPF/WigwnNItGVHW0ykF7YTC7UbI/ 5DWBnXGHZKI1syvnGcMpZ1wJmcnjp75ept6kV5Uq2IU4KcyVpteOe0n1wm+2NbvcUS5a fy3F0NivBVa/aQlEWj+RQr3zhqfp4zFtmkF8m/WfQiqci8hOagoKYhEVJ9I4Au/nzAPI /lL69X1nJRcZ1BIUqLJZ348Fnk7xzONwXZPm4E2XIwXLrm6RK2+Q8BK3KMEdO6G3yPoC 0EQl3IgS9Gel80XuQBPIvSUHurcuCQ+NYeNvDdkMqzDlzhehi23VdL7MAd8T+2zK1VTQ 5Ktw== X-Gm-Message-State: AOJu0YzqjxEBOl+PoZfbIx/apfWgpaBATs5xwrtrYePACE6/DzT/9NsO WWBTyc2ptzugsgAi7vXegAT3cEbRYZvfv/PNmaX/ttlURPCBC4KR+IGZfVf/+ufdjGgXhOKKSHA n X-Gm-Gg: ASbGncu3zt34j4oe4Szz43G1yNcUAFJlgqga31YdsvcOnqM01mcLnJHvTEygo9AqZJi VadVTvVNAJ1P1IhRXJd94CyfLpf+IFxcZUXGqVOBPbe7smjVScPDcjcN7d4OFxPnwQWdrpZk2QR KRQfU13arqyilntogkJ1+h1dbU1yKCVV8T3dWfz9sNnBlxgp979Gc66OYszGkHce+tHlsqpZK7/ 0pmbt8Ny0LLSR0yWGED1+h+o62Xv4BimRU4kPkcE0Qv7L8x4dCQOIHbXLtICWLV8kRYxHad0Dd/ 7t45QOVrQ97niIvRIcgaIiT+cimEsXYNJZgPo/BG6suw X-Google-Smtp-Source: AGHT+IHwzlIJ6LxZBvPsjg5l1kKbXhEFWIu9N9qHSrE9Y+TBbc5aw9FWPh64Zl9aShUUkawUwyHzSA== X-Received: by 2002:a17:903:22c8:b0:223:517c:bfa1 with SMTP id d9443c01a7336-225e0af0323mr191813145ad.38.1742236470577; Mon, 17 Mar 2025 11:34:30 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:30 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 05/18] exec/memory.h: make devend_memop "target defines" agnostic Date: Mon, 17 Mar 2025 11:34:04 -0700 Message-Id: <20250317183417.285700-6-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::62d; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Will allow to make system/memory.c common later. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/memory.h | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/include/exec/memory.h b/include/exec/memory.h index da21e9150b5..069021ac3ff 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -3138,25 +3138,17 @@ address_space_write_cached(MemoryRegionCache *cache, hwaddr addr, MemTxResult address_space_set(AddressSpace *as, hwaddr addr, uint8_t c, hwaddr len, MemTxAttrs attrs); -#ifdef COMPILING_PER_TARGET /* enum device_endian to MemOp. */ static inline MemOp devend_memop(enum device_endian end) { QEMU_BUILD_BUG_ON(DEVICE_HOST_ENDIAN != DEVICE_LITTLE_ENDIAN && DEVICE_HOST_ENDIAN != DEVICE_BIG_ENDIAN); -#if HOST_BIG_ENDIAN != TARGET_BIG_ENDIAN - /* Swap if non-host endianness or native (target) endianness */ - return (end == DEVICE_HOST_ENDIAN) ? 0 : MO_BSWAP; -#else - const int non_host_endianness = - DEVICE_LITTLE_ENDIAN ^ DEVICE_BIG_ENDIAN ^ DEVICE_HOST_ENDIAN; - - /* In this case, native (target) endianness needs no swap. */ - return (end == non_host_endianness) ? MO_BSWAP : 0; -#endif + bool big_endian = (end == DEVICE_NATIVE_ENDIAN + ? target_words_bigendian() + : end == DEVICE_BIG_ENDIAN); + return big_endian ? MO_BE : MO_LE; } -#endif /* COMPILING_PER_TARGET */ /* * Inhibit technologies that require discarding of pages in RAM blocks, e.g., From patchwork Mon Mar 17 18:34:05 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019877 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 98A99C282EC for ; Mon, 17 Mar 2025 18:37:38 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJN-0004tb-6o; Mon, 17 Mar 2025 14:35:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFIk-0004UJ-5h for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:05 -0400 Received: from mail-pl1-x62d.google.com ([2607:f8b0:4864:20::62d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIR-0006AU-AU for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:34:57 -0400 Received: by mail-pl1-x62d.google.com with SMTP id d9443c01a7336-224341bbc1dso88729245ad.3 for ; Mon, 17 Mar 2025 11:34:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236472; x=1742841272; darn=nongnu.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=mZcjdDtX1Z7JVvsuWgguTldfqVr7ZBWkV3i9i17ooa8=; b=qi0SZyYTjwSkYxAsdkd/cBZGZ15yogKkujp/cyfniIEK+3fRVj4xurD7Nk0GaKf2pH /6Kfajekioz54iJ20Iq17gVstSAw3DhoHcAyyRfhnr0ZtWGbGU95fkxHVQukpA3MDcgE 3KF+FOGF+yKJVC/7rlbcnBE+toNtqnt5nMl6QrnL8czrsWYBeyiIE82inGT+co+4PoD6 Y8clKk/rhpUCWA/btJwX6Nsxf6DABpeAkjByQCwcikXpwy4sEYvC2Fj8KAL8ZPHUtY/f WOngCRAmVopQgu0PPYHXrJeIevNVv2RUaLHVpuuIvKs4c3+fpfRIf/kjxeSTtQxO5aGi Ktgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236472; x=1742841272; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=mZcjdDtX1Z7JVvsuWgguTldfqVr7ZBWkV3i9i17ooa8=; b=GGBzxhLdAmXQlVMVBS6lmfWhwqFhpLemFQYQHYqCh0EjGYyVT/y15ccVMR5RjMjLNd BsMU4OToEWHmZyCNV1IXlyY4RmBO6u5LTVmr49IKYvwt971GjdDHgWHJMA01x7rlATx2 ynkJwmWRe98WWr3Yw/KcYq04pg9wKHxMm3hn/HGa/ykoMolDigWaNUePPj9pQ3jDXhxM 5ElKIbqvb5fYXhAtO3h/76B75DxO+aO82bcAM7fbZcEu2Jwmmg7Kn/mHHSadCAQfzBJ9 EyHrYClzKxQc9fFNTIHWIxrSTbM9Urbs0pCEgpWjoKAMBH4iZkqs2UMLt83Ls6pAAiP6 KRrA== X-Gm-Message-State: AOJu0YyteGA70vYudo6XRSwMT/yZIH6NytluhjPJm33xtFmbdRwpUIPW 3dj5T3AuBGycDdn+fkUGCOQWVcN4TymHH4/JSClONin4UPIGzU5n4A9iE3FRDtvOBVdJBZDIWvN Z X-Gm-Gg: ASbGncukdNWTP2hXDSRGQZgXxOw4D0ALw3VHHr1YhgmbsxwdNMqf97x2E8i+3coHMg6 roJiAF5sh5FaEyjALRpaGOAtqp5+VTzLFN+3meSj20i4RU4s/jkIRypOMMxi+7jxDwmPAoYR0+8 CNuCbEV1jnE2V6pajeRFc+gHeSFv5sWwZ6FCtDzlxvUF+QtLf07JCNTopHLUkTf7rXHmFg47BeU YWlBuyJl/GPfo0x4Gvk7aWRK3ZiTaKasX7WkfnNQpKsorsMTgO41wx/mpgA4tDWPNWRpdI1FV+E kd5jUzS+mfha0MyluJ9zM5uEuOJ6kFGF2fjSGriLdtsL X-Google-Smtp-Source: AGHT+IGNO8bUyUW0Tf64WVNf5jONex1ECKej9xrvhw7mQgHMktiWmZ+ZuCh9rC5TGEXL07arJnJidg== X-Received: by 2002:a05:6a00:3c81:b0:736:5544:7ad7 with SMTP id d2e1a72fcca58-7375723f949mr818617b3a.14.1742236471771; Mon, 17 Mar 2025 11:34:31 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:31 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 06/18] codebase: prepare to remove cpu.h from exec/exec-all.h Date: Mon, 17 Mar 2025 11:34:05 -0700 Message-Id: <20250317183417.285700-7-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::62d; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/tcg/tcg-op.h | 1 + target/ppc/helper_regs.h | 2 ++ hw/ppc/spapr_nested.c | 1 + hw/sh4/sh7750.c | 1 + page-vary-target.c | 2 +- target/ppc/tcg-excp_helper.c | 1 + target/riscv/bitmanip_helper.c | 2 +- 7 files changed, 8 insertions(+), 2 deletions(-) diff --git a/include/tcg/tcg-op.h b/include/tcg/tcg-op.h index a02850583bd..bc46b5570c4 100644 --- a/include/tcg/tcg-op.h +++ b/include/tcg/tcg-op.h @@ -9,6 +9,7 @@ #define TCG_TCG_OP_H #include "tcg/tcg-op-common.h" +#include "exec/target_long.h" #ifndef TARGET_LONG_BITS #error must include QEMU headers diff --git a/target/ppc/helper_regs.h b/target/ppc/helper_regs.h index 8196c1346dc..b928c2c452d 100644 --- a/target/ppc/helper_regs.h +++ b/target/ppc/helper_regs.h @@ -20,6 +20,8 @@ #ifndef HELPER_REGS_H #define HELPER_REGS_H +#include "target/ppc/cpu.h" + void hreg_swap_gpr_tgpr(CPUPPCState *env); void hreg_compute_hflags(CPUPPCState *env); void hreg_update_pmu_hflags(CPUPPCState *env); diff --git a/hw/ppc/spapr_nested.c b/hw/ppc/spapr_nested.c index 201f6292033..a79e398c132 100644 --- a/hw/ppc/spapr_nested.c +++ b/hw/ppc/spapr_nested.c @@ -2,6 +2,7 @@ #include "qemu/cutils.h" #include "exec/exec-all.h" #include "exec/cputlb.h" +#include "exec/target_long.h" #include "helper_regs.h" #include "hw/ppc/ppc.h" #include "hw/ppc/spapr.h" diff --git a/hw/sh4/sh7750.c b/hw/sh4/sh7750.c index 6faf0e3ca8b..41306fb6008 100644 --- a/hw/sh4/sh7750.c +++ b/hw/sh4/sh7750.c @@ -29,6 +29,7 @@ #include "hw/irq.h" #include "hw/sh4/sh.h" #include "system/system.h" +#include "target/sh4/cpu.h" #include "hw/qdev-properties.h" #include "hw/qdev-properties-system.h" #include "sh7750_regs.h" diff --git a/page-vary-target.c b/page-vary-target.c index 3f81144cda8..84ddeb7c26a 100644 --- a/page-vary-target.c +++ b/page-vary-target.c @@ -21,7 +21,7 @@ #include "qemu/osdep.h" #include "exec/page-vary.h" -#include "exec/exec-all.h" +#include "exec/target_page.h" bool set_preferred_target_page_bits(int bits) { diff --git a/target/ppc/tcg-excp_helper.c b/target/ppc/tcg-excp_helper.c index 5a189dc3d70..c422648cfdd 100644 --- a/target/ppc/tcg-excp_helper.c +++ b/target/ppc/tcg-excp_helper.c @@ -19,6 +19,7 @@ #include "qemu/osdep.h" #include "qemu/main-loop.h" #include "qemu/log.h" +#include "target/ppc/cpu.h" #include "exec/cpu_ldst.h" #include "exec/exec-all.h" #include "exec/helper-proto.h" diff --git a/target/riscv/bitmanip_helper.c b/target/riscv/bitmanip_helper.c index b99c4a39a1f..e9c8d7f7780 100644 --- a/target/riscv/bitmanip_helper.c +++ b/target/riscv/bitmanip_helper.c @@ -20,7 +20,7 @@ #include "qemu/osdep.h" #include "qemu/host-utils.h" -#include "exec/exec-all.h" +#include "exec/target_long.h" #include "exec/helper-proto.h" #include "tcg/tcg.h" From patchwork Mon Mar 17 18:34:06 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019876 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C39D2C282EC for ; Mon, 17 Mar 2025 18:37:29 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJO-0004vP-BY; Mon, 17 Mar 2025 14:35:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFIn-0004V4-Fh for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:09 -0400 Received: from mail-pl1-x62b.google.com ([2607:f8b0:4864:20::62b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIU-0006Ah-3b for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:01 -0400 Received: by mail-pl1-x62b.google.com with SMTP id d9443c01a7336-22359001f1aso41894355ad.3 for ; Mon, 17 Mar 2025 11:34:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236473; x=1742841273; darn=nongnu.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=bYYGOsy+zcSjxVOnigwMonGaAhWbZB7W76ZyOX5Jlgc=; b=loTKUbk6UnZS9c0hxYPRqlmFC9nK3iJVBgX5D0URgS3aaImozZPomkhvITgw3A3p98 gR0iqj2ISl1fH0wuL6ak6JSOpKJ0U8YFPW3Ul8KxDEdugJmf5H/x3KyJoLP26T3CGa1X qQ5oriPcK7xvVbu9Vt5Mw9BQ7DMRvcp/IFHJe/Qie1BpMRMI60mmWqJBfsr5/ZmoJuYS 8ovhzcxHG/tyK2/ILWtGBobr3DbamKUzRlIz0eI9WjuBYB+B/a7XD4/3pufY4rqIEP80 pHUu9dFtb7fFX8nsARN770uS0rOuCkJJEhIynXCN/1GyYVUzZqBJRobZ+FYiiq0bMVIs xzXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236473; x=1742841273; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bYYGOsy+zcSjxVOnigwMonGaAhWbZB7W76ZyOX5Jlgc=; b=wSb/oGaiFcXnbmBnXTSkmN6038aILJkQNHGtFTiLS8h6gec4gFnHnZGEqBeR1omZ9W lrj8U9dknRd1ahv7osMYcnmyUO9TQRHTjADIQ/GS1c1koemYMMBKUhcJ9hHsB7YLc2Uf 8VkjmEhxEY/s1fi84hMeKwyGhtweI+r0+Y3COmDburLPhnihrrGpwFcrYunzYLNBWOGF zyVppTU87bqnHBNKtEgTSMgXDVju1wI9Rkvvw4c/TR+2e6wxMBdFPp8JgpdQgZ7ZjH6j 4B++qzNAxYbO1mh1VJUsSUQJa/7OJHUNPIgp3kcmnYnxVD5anpb1i1FDQSnTt7IjuRPQ Gigg== X-Gm-Message-State: AOJu0YxpTf2ss7orTUkyUCSC6odp9aGtTP9M14yJ6U0qPt5l4qG6xnVY 8qEL0iQeagnFhijEoWKruKc7l+4TjTKnFVmvlf8saSD6I3ZpzbqqIlCmGGXKAR5lp22NDOjjnqh r X-Gm-Gg: ASbGncuyxKAsw9c/A0uXQXn0jofiJx8/k6kPjez85XX6c1/JUSaIt+SoFLP7h9BnND8 ebnP+B5GwVy6+2rZC0jYhhcwsnldnqJBIrgaQP6+PvYAsefnvWhB6yr4ecjrATL5t/3NnOej14s z8SrkhUDCxwpChfOrbB7o2Z2VkLTszVeJZJAXwdGtpCLUIskuM9+QcHs7mCCSg+rn+93igAiUdL hEBV2DPHW7broTFqaYrq67fJniTtcXcXb3fKFKWISN/MjA2KfXrzZ1dMbXZ9r6pDpHqGKDdc56e m0JS+/tkqXpzi9MF7dK8B6x/ix8xQzPCRpOpMreoMA12 X-Google-Smtp-Source: AGHT+IFV6DhukzDJTQhxKL2T76dlm4rDEmTDcVzAIQ6vxy9qm1/fBJU2mGtWaSFzbonBb3tr3G7FIw== X-Received: by 2002:a05:6a20:a11b:b0:1ee:efa5:6573 with SMTP id adf61e73a8af0-1fa43cbf794mr1071010637.8.1742236472852; Mon, 17 Mar 2025 11:34:32 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:32 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 07/18] exec/exec-all: remove dependency on cpu.h Date: Mon, 17 Mar 2025 11:34:06 -0700 Message-Id: <20250317183417.285700-8-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::62b; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Previous commit changed files relying transitively on it. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/exec-all.h | 1 - 1 file changed, 1 deletion(-) diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h index dd5c40f2233..19b0eda44a7 100644 --- a/include/exec/exec-all.h +++ b/include/exec/exec-all.h @@ -20,7 +20,6 @@ #ifndef EXEC_ALL_H #define EXEC_ALL_H -#include "cpu.h" #if defined(CONFIG_USER_ONLY) #include "exec/cpu_ldst.h" #endif From patchwork Mon Mar 17 18:34:07 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019881 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 97782C282EC for ; Mon, 17 Mar 2025 18:39:13 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJQ-0004yO-VH; Mon, 17 Mar 2025 14:35:45 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFIl-0004US-R6 for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:08 -0400 Received: from mail-pl1-x62c.google.com ([2607:f8b0:4864:20::62c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIO-0006B6-Lj for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:34:58 -0400 Received: by mail-pl1-x62c.google.com with SMTP id d9443c01a7336-225b5448519so88590945ad.0 for ; Mon, 17 Mar 2025 11:34:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236474; x=1742841274; darn=nongnu.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=Rp8GQC6vA5rTxSSazblnkjuLZPjrJAYUOFg9uGM493s=; b=lJ3Jk9jgB2vzvglhUh5wIQVJsbOiyjAei3e4E50N9JZJI28cwku5hpR3qtYtpBqJGE MH3Tl7qgjJ0ZvtxAP2dnMmNCgFgi/yGaAV2/QkFELTcIrk92Ezlu2VOHA2XwOodUkOQL pzTsvFLxo1t7CNfvzrVB2u00NdB/Ivc6PVB4K5YJFn9JWUX85QSAqiIADODX12CrkwGx vpYgf6A/pyxgQSDnWi6ZEK0XLAfWE/yIZP2V3nqq8RozXIqSeOkrhhvcJsScIjOo2kON 6PRlPaFxBqcc29/EABtQUCPZ7wnsXKiEzZupbNPnn4BvMabPxVGUK5Z6E9joHx63sqqK 3uMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236474; x=1742841274; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Rp8GQC6vA5rTxSSazblnkjuLZPjrJAYUOFg9uGM493s=; b=H7RnuR4Dr0x06AXna17DAYsMLefxK0qy5I4AYPfDf7rX7V2pRwT8DdB9Mf64UaQYSz z12qL07Q7FaGAsKY8V/6ZCpXonbfkfcKWO1cghFiexL4mu+dgrGbDRh+he9eiVK/wnlF ezE9Ya73RUUp+Fsboghm1kAlFSH4PH7zE092cOtuHdSSD7ynKRNHzh+K3haHpbgkNAvw qTrKtVpIxkFCAUF6CBd5AS8JRB5f6qahBa5XGh61hHW/45j0viuYjdG2UI8V1dI1JG/b fiSLf01CJbpeyNDsKMA6hNCiKjv2atJFvKa5gH2Ex3AJVqG8v9UViNWENAZwhlTRybAw n6tQ== X-Gm-Message-State: AOJu0Yz3u9A9QlNrcyNcP5I7hnKdZSxgWh5hFkQZrq4/34K1wrg1t3ev stxfJloUZPy6+GV7eIVpOWEOc8Uc8mUrSy90zWRih2L5VAa3rhFaLYRZL6ucHZjeUyK1EhF9iDG m X-Gm-Gg: ASbGncv/EqQhh+R8SEa2Y0P1zG/7thMQQ1TcVkH5d0vEDEBmez3dHJ5r5y0AdzlbsEB KPcEEA9cTUcOyydvQtlZb1fhhGF0hq1D8jdVa5LOLcrweZuH1I3OvIe8ByMM6b9DSl9ckHa9Wb+ +xHXmkFar5f98jgOTzZbe2nwyboHUH1Ijp0J7UMjV1V//XpIvALH+CMdlcstgsjS6MkSb5+Jnra JoZ1iHtOvaVSSQlwMg8YOrQuxvFnJKGHNxA2q+Zqx7NK5vlPPCcqDY31OIN1LY3SkpA3+QjUlQw m8Br0j9XKI1NkTB6yYa0SDTPgmZZupZAtaBK5/Ub+nrZ X-Google-Smtp-Source: AGHT+IHGRjUHfsZhtfemIo+dlcyT/9a20csro4vrsnSjWHRpRL87+9vnxPcq6naL2TxBdu+3gDVtPg== X-Received: by 2002:a05:6a00:9a7:b0:736:6ac4:d204 with SMTP id d2e1a72fcca58-73722375218mr14371340b3a.11.1742236473962; Mon, 17 Mar 2025 11:34:33 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:33 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 08/18] exec/memory-internal: remove dependency on cpu.h Date: Mon, 17 Mar 2025 11:34:07 -0700 Message-Id: <20250317183417.285700-9-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::62c; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Needed so compilation units including it can be common. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/memory-internal.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/include/exec/memory-internal.h b/include/exec/memory-internal.h index 100c1237ac2..b729f3b25ad 100644 --- a/include/exec/memory-internal.h +++ b/include/exec/memory-internal.h @@ -20,8 +20,6 @@ #ifndef MEMORY_INTERNAL_H #define MEMORY_INTERNAL_H -#include "cpu.h" - #ifndef CONFIG_USER_ONLY static inline AddressSpaceDispatch *flatview_to_dispatch(FlatView *fv) { From patchwork Mon Mar 17 18:34:08 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019878 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 36B61C36007 for ; Mon, 17 Mar 2025 18:37:33 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJS-00050m-VU; Mon, 17 Mar 2025 14:35:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJ2-0004fv-Ar for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:21 -0400 Received: from mail-pl1-x634.google.com ([2607:f8b0:4864:20::634]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIU-0006BO-9t for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:15 -0400 Received: by mail-pl1-x634.google.com with SMTP id d9443c01a7336-22423adf751so80104185ad.2 for ; Mon, 17 Mar 2025 11:34:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236475; x=1742841275; darn=nongnu.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=PfpTTedni4gUGfvRcfnvXw4xTvY7JO0pNjOjXTZ7pI8=; b=jKWcnob/q6MXIT6ilZI6A6gSIRTncTy//ATt2lz9fwHOcDX2zHHegOBEgW17U53lY0 Ofpij44oRTdDUdCkAT0bfl/xWaRxS0lexeRBr59WAkhGmZQc9q9X5NsLdPgjzI7G1SEb q0wW7svIwwjl0AthgWNwRBZgwpvdwMkbSSbWsUPyViBcpQiCldhvCMipg6LhKaE5BD0r NhE5fZPL79M/R2ju5DiamKuYxkVjPEd42dZK/Mj3M4z3o4Kzpf4oMgcLBAXGum7UvxaV sl0r3pHVtIu92kI4xzxS7s0abDY2lJHl+Iz5/EUYQaDTDvtxfgJjG+T/Ycb3k1LyUvZI +tVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236475; x=1742841275; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PfpTTedni4gUGfvRcfnvXw4xTvY7JO0pNjOjXTZ7pI8=; b=wKv77fUWwMxBZb5M7t+86HsEL97yWkwWxhtUKW0FSoJQQmJY/yrYOaHdT/L2AOAJ/w 7XB4dRfJm253oBcJ7GmthudGkaEIC40NdT9n8Kl9gORUGhRdIoxJi9JSiyJzdhULOaL/ xMlh0urAmU++2GR6UOMNTVUuCRg3ApTW1kcZMwMpibYeS0ssfLZ+uSo4/JQrW1hqJtIB 3N4qkRckesZR0Kl1/WBK6HhyknAMj3XXALDMJb+UNiwB2uqWBbpHaFWZqM3uBj1QDekI go1pHI/cYVxxjrVbmSqAlLbAhGofEQIZHA6jz6ZFCJ+Ea8bdqop6cugrz98/+0q4b1mr zm1g== X-Gm-Message-State: AOJu0YxZoi3TlgRPF01aTScqOK6zl7hj3XX8OX5wx4fjpnOXIp+tz4Ay qI4nLoAPc+NYaPu4ULzSCXihqeDrZfMP0uMVm3a5g2wSTlFABHs7xJCuYPnU85OBa57+Kf1yaFJ j X-Gm-Gg: ASbGnct4FJ5PwAdAjhLcKl9vgUf1xbAY8MH7mndcdBlNuAVgPj0h+ALPsfaOpdzZKHH Ot9zMAD2En07/wBFLL2BdnbF21Q9M2sDJX6JbqLIPQvUDmm8ZVd8syZf2AqogqnwO2i/ZvfVOXa Gs+MGsttS/kM3RZ3mGZEGUX3oaLnPg8iHW1ZTKS7lvE7/SFkedouAbuY7tPjTo1/3Mry1SvYv2Z +Ranem5u0IPLMvfFqQwmxa34nkwOtynSLc4sTy9NanrI281wY+ZQsrvuxHShPJ6ZQdByT7qeZRH yhtKktYDBYskLxhuUukZhLzoRmXjbNyWPzztQxXdDOeP X-Google-Smtp-Source: AGHT+IHhIUK7t53+vTI188pQaTMyR7EJzQqReYcVMpj4OefpwS1cjUKc4hsfvFYLapAGzkczRRlDcg== X-Received: by 2002:a05:6a00:2196:b0:736:a6e0:e66d with SMTP id d2e1a72fcca58-7372238f773mr15973995b3a.6.1742236475108; Mon, 17 Mar 2025 11:34:35 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:34 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 09/18] exec/ram_addr: remove dependency on cpu.h Date: Mon, 17 Mar 2025 11:34:08 -0700 Message-Id: <20250317183417.285700-10-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::634; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x634.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Needed so compilation units including it can be common. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/ram_addr.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h index e4c28fbec9b..f5d574261a3 100644 --- a/include/exec/ram_addr.h +++ b/include/exec/ram_addr.h @@ -20,13 +20,14 @@ #define RAM_ADDR_H #ifndef CONFIG_USER_ONLY -#include "cpu.h" #include "system/xen.h" #include "system/tcg.h" #include "exec/cputlb.h" #include "exec/ramlist.h" #include "exec/ramblock.h" #include "exec/exec-all.h" +#include "exec/memory.h" +#include "exec/target_page.h" #include "qemu/rcu.h" #include "exec/hwaddr.h" From patchwork Mon Mar 17 18:34:09 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019890 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 34383C282EC for ; Mon, 17 Mar 2025 18:41:38 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJV-00052t-6R; Mon, 17 Mar 2025 14:35:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJ5-0004gy-9g for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:24 -0400 Received: from mail-pl1-x62b.google.com ([2607:f8b0:4864:20::62b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIW-0006Bn-76 for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:17 -0400 Received: by mail-pl1-x62b.google.com with SMTP id d9443c01a7336-225df540edcso61414265ad.0 for ; Mon, 17 Mar 2025 11:34:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236476; x=1742841276; darn=nongnu.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=BsftdeZcZ0LsVJ43Vlgc1kB7SrUHDvnjwuIeYSteybs=; b=o84Fkg8jknLDIUcKXE+NdAhNbNURUtErC4I5s7HGLXJwIhLe/ZPZ7C9joTiOfIk25W Ut+Q4iENe2UQiWR3g/2K/0tHc8BGTcBNLmWtAJGFVUhLmugNC0QHgPCueIHEhdLy6YwC UWXa1k0umYypLLGt0Cuvn44e+bwScdedn/eHZd98BWvliX7ejbwS31mOiTWvc0VHLDQx 3Cn56LqDMnFtrxUXwyP/unPhEoYWunLTYpcfLd7e5wTVjP2/kh+2QCsVeOhjV4Xzivx4 IyMx1uDPjg3figx+Nn243B7Jvf9534dYmxRPDlnB8ZWqGbXPTi7/bdDl8Pwl0uivrP7E EsXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236476; x=1742841276; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=BsftdeZcZ0LsVJ43Vlgc1kB7SrUHDvnjwuIeYSteybs=; b=bZQz5TLzTVW5Ahy8BaXdYMZuibNAHr4MBVvbxuP9Ztkawd0xNSNbctgCxzF8mOXTw7 yiUc/7MiQR1rKxevqo6s3f7DQxVqAXxIC+u1BKGovupZgyxQy6KkcqB0X0Hf5Sqr05hG 5ssyf+Xm2nRx5LHrGItVX3QuDQIZlCzyIfwzQVKl3BSLfr5CYk4Cm75XrJSDHjGfoPjg 2wItfUhWxZPZ5QaZb4mUNZQ4jDlHMPQJtlT1/04rD8tCzhq0+s2Xd+HsgkAx2JqlnDUn uE1Qup7lEGMnYY789fQUB3TxP9PTKkEsRAAaBC/JvyQ5W4YFeiNahhLs76HIyHFK5M+W PIBA== X-Gm-Message-State: AOJu0YyYW5+pdlBjl0EqCpnDnqMW6y94CIXa9F/LZhBIPFJSlRNOS+NQ vMpzS1HmvBWyfJqz7k7Nt0loZgA9KXQDELWvMAxQSQJ/DV4GbHdcxuH9milhHDhA8UfUQsY8jLE o X-Gm-Gg: ASbGncvosTdsbl4mvcWfRDeqlzFLGBwT6GbhgamDaRSJgh5KIrAxaHCCRqkMzTxkcGn M/TO6oNPilbE+yMpx19i2L4oD3pI14yqi8+/YwVGsYSS6Pp410q3BCUfm70oKX5U3ZOSUSm+JD+ 3JTINaDg8P2YTDevGCAwwcJ0EMLwmkxcfs9Z2dHTdOG4F1dqzm0ZL+vBO6Pl0T0JlJ6hJ3iVxNZ 5uDnBD/2qIbceTrPcOk66ASXvVMwnTkEr7flAXVfJsDGFwqHpMr4bGzObtaPwJLjuEBbjJdhlCM KPPTxuYzxvcgIubSCQhFtoDVGUo00o5LWjp3SijIseO8 X-Google-Smtp-Source: AGHT+IFrc3E9fUAh+z3i68X6oJdtySmjNUcFSLSYjTurJl9vG25uO/0RkrUhFSmr8bwDc6/U+8pjrQ== X-Received: by 2002:a05:6a00:3b8e:b0:736:b400:b58f with SMTP id d2e1a72fcca58-7375752916dmr715700b3a.0.1742236476193; Mon, 17 Mar 2025 11:34:36 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:35 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 10/18] system/kvm: make kvm_flush_coalesced_mmio_buffer() accessible for common code Date: Mon, 17 Mar 2025 11:34:09 -0700 Message-Id: <20250317183417.285700-11-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::62b; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org This function is used by system/physmem.c will be turn into common code in next commit. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/system/kvm.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/system/kvm.h b/include/system/kvm.h index ab17c09a551..21da3b8b052 100644 --- a/include/system/kvm.h +++ b/include/system/kvm.h @@ -210,11 +210,11 @@ bool kvm_arm_supports_user_irq(void); int kvm_on_sigbus_vcpu(CPUState *cpu, int code, void *addr); int kvm_on_sigbus(int code, void *addr); -#ifdef COMPILING_PER_TARGET -#include "cpu.h" - void kvm_flush_coalesced_mmio_buffer(void); +#ifdef COMPILING_PER_TARGET +#include "cpu.h" + /** * kvm_update_guest_debug(): ensure KVM debug structures updated * @cs: the CPUState for this cpu From patchwork Mon Mar 17 18:34:10 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019891 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A96F0C282EC for ; Mon, 17 Mar 2025 18:42:00 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJK-0004qC-CY; Mon, 17 Mar 2025 14:35:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJ4-0004gv-9M for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:24 -0400 Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIU-0006By-4U for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:16 -0400 Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-225d66a4839so58052445ad.1 for ; Mon, 17 Mar 2025 11:34:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236477; x=1742841277; darn=nongnu.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=PABH8iZPN9WF+wJr72ZMp6Lm7i1C+9jWBJAvssLik90=; b=LyrkipDVKnFVG8gmAPmA6kE0IUfpMrbKOfXTPtpyUVaGx+Xmd8iNQzSF71IxI29zYA nmXuG5THH2A8/fmHsGTpHfIt8l9DMCV4u5rZbBG6fSLmQ395aEv45giJ8+qYiSlFnLHz 4tlOdPh1WsS0Iyg2DkikTBNEPUKLr/KR8N+GOpEicqpz1FiGUk//vKQnhhFRHusJVftC UkXGhywPPMnhcQ3iXdMWESSx51ho5W+LnrUDPWEN7CF/bWKzzEcVEWwY8VExCnFHvYnQ 90qQiSCqXu3c7rsOfBKJxGjToniO04GL+8EIvM6/buyzup4o3MDH1xvcx75hMN4GHOEC MgoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236477; x=1742841277; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=PABH8iZPN9WF+wJr72ZMp6Lm7i1C+9jWBJAvssLik90=; b=jkT1fjT5QGX7TpU/e7QEj8LMJ1OlWm+fBuE58m5cJFpuKUvIFmizWoIyRMYLR3tNPu 1eiR/OI8a3EIRqMMMAROfTP4k90S20hlzuwxFG7rRDOJoE+GJvIV9XAIXjnKNMWuLFxg vQJ7YNE6bYvCxtfPFDrH83kSYmolrf/8JVWKl7Z9cFXfCdwwEmFIM5kgvCIFYo8hqbIB LhPqONCfR0LxHZi/Lr0oSin8Wrm6A0J6LFDAWXgcU8caZmCjzBo6pQYfP0bnhwJ/5olb /C3T+1me4Hu9/r2cfCTZK5vfczPyAIDwLYvSLFgF/ITLd9nJXquA6BsTIFgS+jYz8Egi SgDg== X-Gm-Message-State: AOJu0YyZiEj8YVmJtIIlJm8do+iUwifpX5JwyIBbBSLLaV1AaEsOmwoN +clcAG6nSyukWbb3CzrYUv1CsGXAtauKZMRWWjxRWnRH4CxFcJitVkuAKG7JpWXLAlNffWVnYLM I X-Gm-Gg: ASbGncsSJjPntTiflJa/NsEBLNwPJ66WQMWyTrAiYcTugTlTYCHaZQPMYwFDXDyEi1U CH+sY0S0ywaJr55Ow8ZbJMNuFAwp9I28MiWlKg/BUTcCaG0z4BLTcCUCLzh5Md7yWi9lPao3r18 X9EwAfIrfVlMcVRkAirJfFUZZeQ4lyaJOG2n3p+Fv5caVtQ5G62luKRrhS5wNihFervjYOYlV1f ZogzkdLU6v744koMEQSSWDcyyX36gnEv4IlkUxQqp9om5Abv/jx4MQoPYAeJDghmCjcdsA7Gnrp Ik7cHeXcsdjH2xsfY0Ec0F2N6umg2scH3Wb0Apx1mL+T X-Google-Smtp-Source: AGHT+IG3g1g1/S4GhLMViIQmdttYJlPvvQDr2HFvFncsoI+sX7+pFPl4do/KG0rupNOCudw5OLu0nA== X-Received: by 2002:a05:6a00:2d8a:b0:732:5875:eb95 with SMTP id d2e1a72fcca58-7375778c1femr704383b3a.4.1742236477316; Mon, 17 Mar 2025 11:34:37 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:36 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 11/18] exec/ram_addr: call xen_hvm_modified_memory only if xen is enabled Date: Mon, 17 Mar 2025 11:34:10 -0700 Message-Id: <20250317183417.285700-12-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::635; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x635.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/ram_addr.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h index f5d574261a3..92e8708af76 100644 --- a/include/exec/ram_addr.h +++ b/include/exec/ram_addr.h @@ -339,7 +339,9 @@ static inline void cpu_physical_memory_set_dirty_range(ram_addr_t start, } } - xen_hvm_modified_memory(start, length); + if (xen_enabled()) { + xen_hvm_modified_memory(start, length); + } } #if !defined(_WIN32) @@ -415,7 +417,9 @@ uint64_t cpu_physical_memory_set_dirty_lebitmap(unsigned long *bitmap, } } - xen_hvm_modified_memory(start, pages << TARGET_PAGE_BITS); + if (xen_enabled()) { + xen_hvm_modified_memory(start, pages << TARGET_PAGE_BITS); + } } else { uint8_t clients = tcg_enabled() ? DIRTY_CLIENTS_ALL : DIRTY_CLIENTS_NOCODE; From patchwork Mon Mar 17 18:34:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019882 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id AD3DEC282EC for ; Mon, 17 Mar 2025 18:40:05 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJP-0004wR-Sw; Mon, 17 Mar 2025 14:35:43 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFIv-0004bs-La for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:20 -0400 Received: from mail-pl1-x62b.google.com ([2607:f8b0:4864:20::62b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIU-0006CK-1g for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:09 -0400 Received: by mail-pl1-x62b.google.com with SMTP id d9443c01a7336-224191d92e4so91700225ad.3 for ; Mon, 17 Mar 2025 11:34:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236478; x=1742841278; darn=nongnu.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=59c6JEMS6FIy924v+CKtazEU0ebGAiMufvTS4mzCbJo=; b=lblGK3eFPt+sCGrYW0QxJpE1LrSpGpNxIS2m5YmKhw3nVjjCelWCpKQm6uL5M1QUEp jJ/MOCpqnY0t0jnwo6/g2GkNC2KZC2M20tYHaqKH1StkTCqeNVDZI66shL9LS2bIgMLx esds0hS6iReboXJI7V0Una+VJwreRyoD4iz2FwrFe/bymOcQqduMTECGTBVhdpMdTrHp 6bMxHWLXmEuLfb3BYzpWBx8I3ZsN0zW6YGH2oHSr+VfjqHakgvFYKrtA3ptQo4xGSoUr XD3ZU4f3nL2wZkLe6k3RORD6a5XsBQbjT7M4Jd1AqGiKbdGMP4J4ZX1lxvnyRPyjYFK4 Tt9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236478; x=1742841278; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=59c6JEMS6FIy924v+CKtazEU0ebGAiMufvTS4mzCbJo=; b=iWssq2HhkmcN+7pp2l0yRutyXj0ZStg/qDg40xRkKIV9PxSYxlv1PaOXiSF2ImOri1 X9A8aqrs6EntFt4y3SSjEPZ482lSQoMFEgaXY81wqIPvujH44z0Hdq7iuzvE0Z5djSM8 j2CJm5C4HnpGlqQYh2tfX3wUAmHnf1TGz40Q7fcLhRkRCsiZr0Sv5BpU9xMh5AzgPr4M 8Bb786AZQR3JAQThdnlxmwXJS9MMp8YgENXYS1MA7mxTJp5CxKmOMfmqp5eZM0RgOHcG aJvAv9+JLcShvqVSKamjlI69a47NmU7QO3rydiduHVpAgQs5/lhFtZDAyli0tsm5jzha FTwg== X-Gm-Message-State: AOJu0YxKmkm9UTRxGNPuEQ+7bCRmj1iyB1lau5rQIQrlRQbLNykaH1LC zFFqI9E1okPjaRvvu6jlk7t8DknhjHSaqRdVzdUzt1Bjzq1T/IxnXX77PsecDODOWY9N6Ham2s9 d X-Gm-Gg: ASbGncty68GkyQpv6AF4rL9nHiuS+dSmBQETRcdfReJxd1oO8tuR/zUFfTvnJCYNFkh FI4vctylN8exz61ADkbzcjRjwW76ObHaBa0PZorHQU5Q8qqklMssMuEot0IVsY9rsIuUthqUxig AJMzyeZdKPGT4Ueatf1ndbatGeE/E25gnhMA6Zkvw39tqkfWNDsBurhyB8354h1Mr+vF0pFYsWl dUbxIPywzpMbmnDsGOIN1/vDSL2GKpn/ZTcRlK3mcRD5ShN6v9mcbSEAHoFlqcLZPeP3IgWZ91y 8oM6CXMs+97P5OwYRVl2x3k0VToITSyPNWCBGH/crV0EyIn5UDsHfCk= X-Google-Smtp-Source: AGHT+IGMBPlS4723f/QfXCi2z/TEFSVr/xLDSBzcEDnDoDIjYYHTKxD7//19rhfel7oXOjNf8/+suQ== X-Received: by 2002:a17:902:f711:b0:220:fe51:1aab with SMTP id d9443c01a7336-225e0af4f9cmr187594395ad.38.1742236478508; Mon, 17 Mar 2025 11:34:38 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:38 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier , Anthony PERARD Subject: [PATCH v6 12/18] hw/xen: add stubs for various functions Date: Mon, 17 Mar 2025 11:34:11 -0700 Message-Id: <20250317183417.285700-13-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::62b; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62b.google.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Those symbols are used by system/physmem.c, and are called only if xen_enabled() (which happens only if CONFIG_XEN is set and xen is available). So we can crash the stubs in case those are called, as they are linked only when CONFIG_XEN is not set. Acked-by: Richard Henderson Reviewed-by: Anthony PERARD Signed-off-by: Pierrick Bouvier --- hw/xen/xen_stubs.c | 51 ++++++++++++++++++++++++++++++++++++++++++++++ hw/xen/meson.build | 3 +++ 2 files changed, 54 insertions(+) create mode 100644 hw/xen/xen_stubs.c diff --git a/hw/xen/xen_stubs.c b/hw/xen/xen_stubs.c new file mode 100644 index 00000000000..5e565df3929 --- /dev/null +++ b/hw/xen/xen_stubs.c @@ -0,0 +1,51 @@ +/* + * Various stubs for xen functions + * + * Those functions are used only if xen_enabled(). This file is linked only if + * CONFIG_XEN is not set, so they should never be called. + * + * Copyright (c) 2025 Linaro, Ltd. + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "qemu/osdep.h" +#include "system/xen.h" +#include "system/xen-mapcache.h" + +void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length) +{ + g_assert_not_reached(); +} + +void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, + struct MemoryRegion *mr, Error **errp) +{ + g_assert_not_reached(); +} + +bool xen_mr_is_memory(MemoryRegion *mr) +{ + g_assert_not_reached(); +} + +void xen_invalidate_map_cache_entry(uint8_t *buffer) +{ + g_assert_not_reached(); +} + +ram_addr_t xen_ram_addr_from_mapcache(void *ptr) +{ + g_assert_not_reached(); +} + +uint8_t *xen_map_cache(MemoryRegion *mr, + hwaddr phys_addr, + hwaddr size, + ram_addr_t ram_addr_offset, + uint8_t lock, + bool dma, + bool is_write) +{ + g_assert_not_reached(); +} diff --git a/hw/xen/meson.build b/hw/xen/meson.build index 4a486e36738..a1850e76988 100644 --- a/hw/xen/meson.build +++ b/hw/xen/meson.build @@ -9,6 +9,9 @@ system_ss.add(when: ['CONFIG_XEN_BUS'], if_true: files( system_ss.add(when: ['CONFIG_XEN', xen], if_true: files( 'xen-operations.c', +), +if_false: files( + 'xen_stubs.c', )) xen_specific_ss = ss.source_set() From patchwork Mon Mar 17 18:34:12 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019886 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id DAC50C28B28 for ; Mon, 17 Mar 2025 18:40:26 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJU-00050y-Od; Mon, 17 Mar 2025 14:35:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJ2-0004f3-JG for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:23 -0400 Received: from mail-pl1-x633.google.com ([2607:f8b0:4864:20::633]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIU-0006Ca-QM for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:15 -0400 Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-22349bb8605so102852155ad.0 for ; Mon, 17 Mar 2025 11:34:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236479; x=1742841279; darn=nongnu.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=RL1NPApLGPlk4f7q724/4D7b3IECBRPwWShMeYRIDxA=; b=VX45PaRBKrM5bPwLpkies1jMXFghyrgBtIsEnV27lD49ME4rjhBYaCSMYb9yfOS0RC atESC1ErR6X2WWeIa1grC5c4q5hNjeS7RPvrJ0cIz5crpnmnkt35EwuvmWcEMqKbkfnu 0j+iQQZ8jm0NjK34nMQQ03gukXQWJnvFVBMYZC0Rsn5WD0ekv+ULNNP5dyOeIKt8wHIm 50UwO3eCoyXm7H+Z1ybjwjIegowMg8KZMpXlqHPKc2ereTYVU3/wYEAeb7v/pS+MwrFS Tk0jCm4gSAS7MWTjwYxXeHRI8VC9Q7h0SJP20SJOUCfsuSmftAkML7A/2h9H9m6rXYry in2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236479; x=1742841279; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RL1NPApLGPlk4f7q724/4D7b3IECBRPwWShMeYRIDxA=; b=LZwuO0s0u37CEIKtzOesj4Lny95oUfE49a7JOhZgDlr5MrEypO6q6EOQlLoEWTTiz0 caCzv2s/J110XlNl/ruM/yDvdDBdFR+ZnfLidbWBwSGzqjbimgY7fwPAM8HFrTJORPMv Mo6q4J+NHnA+UMk7XjnzY9i7b/KO3ub9jw2u8thOeG50usXhkUEgNU/v3qOrrKA8hVdN 0pReYUeRnr/VJZ0Wr1roV/+0DnXEt8b/f+QDI5SIXGevnK5N6QnV8bsXjutwY5So2Lzj jR3WIp25TUQfLCAce4Lj9+AsESlkJTLMyWcUS5+irm950hy7rIR78V5XJdv5inWbmMAa D/GA== X-Gm-Message-State: AOJu0YxUAZyUjM1yYZumyn/1ypfM8tme7DjoK3YHBc0C7gO19BmGByW8 H/Ld0F4XWO/95aIi8sVml1uH7vy+QQq6/TVhq9ivoj5mDPz8ythLx+ai5HhlMHWTHKb4nRviojT f X-Gm-Gg: ASbGncsNiunnBAcFfDEkd9kkcbhQiXjkKW/Wy9uGxFCh5Y/0Mk08donoBUgcnS8kW4n kknHGmWXy5swteSXdvUMMZGxotWYs2Ou2kD/Ph+w/eELKVOYUBSmu84nkgmseebWZ7clCFAGA8U qt6J6B1avF6WCEfUwwsc6sO0Ib6HvNXulYMg8491SNMaWP3DRc4q6yxp/HepQ6qB1MNiXb90l8n VF+xXruphx+hmZRLPtNue8SdPK4cEZv8c4yXGQYknLeNa0urQ11okL5I76iOt24z5cacNHxsudZ uyI8Bf+zkXc0g/SMOASBZqsAetDr6D2bE/6zh7kjJ2hd X-Google-Smtp-Source: AGHT+IFOOeyV31jwF+pNrENhCRDzbP+OAMMjvkw2JiLIZfPvEZk2AdzmBDyPiAzaxdBUCsyNl+0UJg== X-Received: by 2002:a05:6a00:1c83:b0:736:54c9:df2c with SMTP id d2e1a72fcca58-7372240f41dmr13708249b3a.15.1742236479639; Mon, 17 Mar 2025 11:34:39 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:39 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 13/18] system/xen: remove inline stubs Date: Mon, 17 Mar 2025 11:34:12 -0700 Message-Id: <20250317183417.285700-14-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::633; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x633.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Reviewed-by: Philippe Mathieu-Daudé Signed-off-by: Pierrick Bouvier Reviewed-by: Richard Henderson --- include/system/xen-mapcache.h | 41 ----------------------------------- include/system/xen.h | 21 +++--------------- 2 files changed, 3 insertions(+), 59 deletions(-) diff --git a/include/system/xen-mapcache.h b/include/system/xen-mapcache.h index b68f196ddd5..bb454a7c96c 100644 --- a/include/system/xen-mapcache.h +++ b/include/system/xen-mapcache.h @@ -14,8 +14,6 @@ typedef hwaddr (*phys_offset_to_gaddr_t)(hwaddr phys_offset, ram_addr_t size); -#ifdef CONFIG_XEN_IS_POSSIBLE - void xen_map_cache_init(phys_offset_to_gaddr_t f, void *opaque); uint8_t *xen_map_cache(MemoryRegion *mr, hwaddr phys_addr, hwaddr size, @@ -28,44 +26,5 @@ void xen_invalidate_map_cache(void); uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr, hwaddr new_phys_addr, hwaddr size); -#else - -static inline void xen_map_cache_init(phys_offset_to_gaddr_t f, - void *opaque) -{ -} - -static inline uint8_t *xen_map_cache(MemoryRegion *mr, - hwaddr phys_addr, - hwaddr size, - ram_addr_t ram_addr_offset, - uint8_t lock, - bool dma, - bool is_write) -{ - abort(); -} - -static inline ram_addr_t xen_ram_addr_from_mapcache(void *ptr) -{ - abort(); -} - -static inline void xen_invalidate_map_cache_entry(uint8_t *buffer) -{ -} - -static inline void xen_invalidate_map_cache(void) -{ -} - -static inline uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr, - hwaddr new_phys_addr, - hwaddr size) -{ - abort(); -} - -#endif #endif /* XEN_MAPCACHE_H */ diff --git a/include/system/xen.h b/include/system/xen.h index 990c19a8ef0..5f41915732b 100644 --- a/include/system/xen.h +++ b/include/system/xen.h @@ -25,30 +25,15 @@ #endif /* COMPILING_PER_TARGET */ #ifdef CONFIG_XEN_IS_POSSIBLE - extern bool xen_allowed; - #define xen_enabled() (xen_allowed) - -void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length); -void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, - struct MemoryRegion *mr, Error **errp); - #else /* !CONFIG_XEN_IS_POSSIBLE */ - #define xen_enabled() 0 -static inline void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length) -{ - /* nothing */ -} -static inline void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, - MemoryRegion *mr, Error **errp) -{ - g_assert_not_reached(); -} - #endif /* CONFIG_XEN_IS_POSSIBLE */ +void xen_hvm_modified_memory(ram_addr_t start, ram_addr_t length); +void xen_ram_alloc(ram_addr_t ram_addr, ram_addr_t size, + struct MemoryRegion *mr, Error **errp); bool xen_mr_is_memory(MemoryRegion *mr); bool xen_mr_is_grants(MemoryRegion *mr); #endif From patchwork Mon Mar 17 18:34:13 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019880 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4F75EC282EC for ; Mon, 17 Mar 2025 18:38:20 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJH-0004nk-Az; Mon, 17 Mar 2025 14:35:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFIm-0004Ut-2H for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:09 -0400 Received: from mail-pl1-x630.google.com ([2607:f8b0:4864:20::630]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIU-0006Cs-1f for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:01 -0400 Received: by mail-pl1-x630.google.com with SMTP id d9443c01a7336-224341bbc1dso88731915ad.3 for ; Mon, 17 Mar 2025 11:34:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236481; x=1742841281; darn=nongnu.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=cOa15ppvF5kxsldjPkSIJYe5T0c824L9GaUvR3via0Q=; b=H9vB6z5EbsXQH5NQ61mhUXNOByRlDmN05TQo/y7BSE+wBbHTp1WFXWVNzY0U3LlYwA 7miH5FCWuM+9uehGpbIhAtp0GOqA3859ZDVJtDLEbRfZTtxmBY40xe1TlqMvK6YHir5+ FfiYM2rraan8swxOJ4XzqkTfQud/FQlrJ3ICbVKZ8d/9Nr9hVyjyc3f/s3Ub9cehAU8F IdtsrMid5K4l3ZV+oTrr0XtrdUHI8A2CtUb/Sl1p5mZ/3zSwv9FWqft35x6ivwHdaPjg bAjuqjmE9iLLF27037fuqDcr1y0LfPImR70ec6/FzNM3Stj4yXXyi0In0HLmwdk5+ZHX 1ZSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236481; x=1742841281; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cOa15ppvF5kxsldjPkSIJYe5T0c824L9GaUvR3via0Q=; b=pjV1reK4MtiikwgKcKOWjLUNB1bUCBTiU5GSHZFzamlkguDKLhu6nVTetPm6UzjVf+ fluRlzRcMee9ovvAcfhjVQD5ftJVQXipn12zdYsbre95k3J8bmC8A3nRkKrEpUx/LNPB +66iA6OUvoQDJm1kF6lPbBm/zPCrK9ELvsSmx4zK9aDVWBYIvMuImEU0Z2eb3pwp+oDx 4y8UedOzjSL8gCilHUjMFvV/UmuKQwBc3M6eH6XFQKuUqohqxPAHfAssqOImj7o5YGKC pZ2hhXx5eaPlLeTk5fPs/mhXqDGDYhho5Li+67WPANW5Svm++9dJmSFUqDVl4p+xDscS IA+A== X-Gm-Message-State: AOJu0Yxrt4jr9jAv/FZy6AlotwmhvqAwOtPFTzB7oLJjHEicvIL6+H2E Q2osLejPJbS2hdBG8cZuNGxkw95YYEgQiqtAjWEF1ZCIN7UFJKKQCQjV8akhKD2M99KwfHLHiii g X-Gm-Gg: ASbGncuGNnMg0SguaSErT+1+iDOF0j/rH2b4E4Xvg0qLw8deu/j6lrPgCnklfORd2un 2uJ4LCde7AhgId7qY1FjNu7bYDC5NP1VxY08wBU0o4lRNQW/PL08ucnzLbra+sloNJHbfS+/i/5 N+cJhJeflK7c/frRA7CRJXwAOZIg3AqFRXEwkHA9qzK/8GlrNuiG1SxEK61NlGMytyO4hAKSXYs marH9vJxsB8DgP5ezZZ1irJ6+pCS8Bc+RYMA23Lx1R2zP4Vj6g4oVqcW0S3Vn/bYFMbpj1yI/gv bFERBTSkC2bz29gjintrLDhumyxS++axpWursiiyv+yT7xM8rbY4WnI= X-Google-Smtp-Source: AGHT+IHJvFyPD498ouch6ktpEIoYmR6xx3vtpzwDFb0ar1DtZX7lkpskC+JCwilCa8dJd3A5JvQbZw== X-Received: by 2002:a05:6a21:7895:b0:1f5:9961:c40 with SMTP id adf61e73a8af0-1fa43acdf8emr1048891637.8.1742236480716; Mon, 17 Mar 2025 11:34:40 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:40 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 14/18] system/physmem: compilation unit is now common to all targets Date: Mon, 17 Mar 2025 11:34:13 -0700 Message-Id: <20250317183417.285700-15-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::630; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x630.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- system/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/system/meson.build b/system/meson.build index eec07a94513..bd82ef132e7 100644 --- a/system/meson.build +++ b/system/meson.build @@ -3,7 +3,6 @@ specific_ss.add(when: 'CONFIG_SYSTEM_ONLY', if_true: [files( 'ioport.c', 'globals-target.c', 'memory.c', - 'physmem.c', )]) system_ss.add(files( @@ -16,6 +15,7 @@ system_ss.add(files( 'dma-helpers.c', 'globals.c', 'memory_mapping.c', + 'physmem.c', 'qdev-monitor.c', 'qtest.c', 'rtc.c', From patchwork Mon Mar 17 18:34:14 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019879 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B87BEC28B28 for ; Mon, 17 Mar 2025 18:38:04 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJb-00054k-R5; Mon, 17 Mar 2025 14:35:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJA-0004ip-D5 for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:31 -0400 Received: from mail-pl1-x62e.google.com ([2607:f8b0:4864:20::62e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIW-0006DD-4E for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:28 -0400 Received: by mail-pl1-x62e.google.com with SMTP id d9443c01a7336-225df540edcso61415945ad.0 for ; Mon, 17 Mar 2025 11:34:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236482; x=1742841282; darn=nongnu.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=0vI16NHb2tKWbIxjnq/SoVUTdY/Lep770BkCc47k0Rc=; b=DA2nNTJiVk5bp05CCI1KSkiBTAuCcZemKJjL7T8qfl8hrsLJZeSnUOCUosus0zXweI PWExMvi5z4VLVf9X9PVHu2i6yYiSwUql5iq5ERr/Gli5xpoQneXjddJ8Tnb0fRV/N3LK DRT78uwJh7S9hmVIgcUbp8ZjsaLK/j28xaZxrZvN3ellTlNRyyPH915Upsa5LNw6aKnc kXuu6Dso9YwWDmTf3gK+MhgrTEh2aNyKlB6pNuD22vsMVLHhmX1WefYp9IleP6jpmfAt y3ql+QbOOHVCQXDwMoH9OKYYlh5QpxoEWB+yKk5VpE2R0/3NUBSEB4WUT3MtW7MbjSHN p4DA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236482; x=1742841282; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0vI16NHb2tKWbIxjnq/SoVUTdY/Lep770BkCc47k0Rc=; b=aBk+Mdz+mRigewpFJByUkV32Ai3B9DSGP6AOjLE9ahRyplkPTLso+TU3V/uulk2Zgk iz1na4/Z3kwUi9XL308IVWTO8RjB5OghilsqA+E5uJabdQW4LlClFZTgtiLs08ZZtGqa sDv3KQ1HWFu+eiX83HjR/UWgykm4FbdJSDZaj/7oxSn5UKsJMRsDIEyt+UPhHHHT+8az tSYhvm/1WrHrte4zb00ralrBLcj8ipNDWQYZbPf5SOhMtM72cmfAUgHq638P4TvfXP7O +Pd4bYwnuIYnH+ERZOGtmcqCSJNX8xXs3VtaarSGgP1N2ePKjvc2QpIE7HJ1oynHvzYW qvog== X-Gm-Message-State: AOJu0Yy/Shl7i1s7pVR2u4OwzVZYiMoQreL0IniyJ17F6sD8l6XWeubz VHD8nOOlfa6OZHwDAhdGA48vSshmwP8dgLuYXSQCesYKg19n1rwkEY1dCmVLgrKtkEjPMV95ody P X-Gm-Gg: ASbGncuHh49UirX/HrNAlxYv9vCnrW+wRZJItjL40GS7aat74uZ2azLJXO6XanrA6Ii Pim+DiO4ws/gzRhEOxvcoOSN+danwvV5G5HxFMgp5weA76Ce/tzyxl4AsN6nZr8wH007n3j8PTT Z2MZ3QdWhzTSrSp+j8Pdk7S1NUHhv7h+oYR7naDYwAynNlCfe26nKP1mT0YXItaeWTzlv2oPb/2 VxESHmm2ZCTUqCxe8Ieg3z9dUOwWAvqByvBlqWbMx59O6c8lAX1YHSPMahdlRAdE9oyxVNeyGCA cYx1UVORFJj66GnHPehLXkTFR9JoiZWUKNPgqXPLbaRCtKM2l+UTRAQ= X-Google-Smtp-Source: AGHT+IHLCVfoMXXafvmlUL+0Gr6I93fx5MjwwlixqoYIvnF6wjRbfJSSJwsXt8s9Rnrm35OOx0JfRQ== X-Received: by 2002:a05:6a00:a15:b0:736:9f2e:1357 with SMTP id d2e1a72fcca58-737578016a8mr692906b3a.12.1742236481805; Mon, 17 Mar 2025 11:34:41 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:41 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 15/18] include/exec/memory: extract devend_big_endian from devend_memop Date: Mon, 17 Mar 2025 11:34:14 -0700 Message-Id: <20250317183417.285700-16-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::62e; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org we'll use it in system/memory.c. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/memory.h | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/include/exec/memory.h b/include/exec/memory.h index 069021ac3ff..70177304a92 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -3138,16 +3138,22 @@ address_space_write_cached(MemoryRegionCache *cache, hwaddr addr, MemTxResult address_space_set(AddressSpace *as, hwaddr addr, uint8_t c, hwaddr len, MemTxAttrs attrs); -/* enum device_endian to MemOp. */ -static inline MemOp devend_memop(enum device_endian end) +/* returns true if end is big endian. */ +static inline bool devend_big_endian(enum device_endian end) { QEMU_BUILD_BUG_ON(DEVICE_HOST_ENDIAN != DEVICE_LITTLE_ENDIAN && DEVICE_HOST_ENDIAN != DEVICE_BIG_ENDIAN); - bool big_endian = (end == DEVICE_NATIVE_ENDIAN - ? target_words_bigendian() - : end == DEVICE_BIG_ENDIAN); - return big_endian ? MO_BE : MO_LE; + if (end == DEVICE_NATIVE_ENDIAN) { + return target_words_bigendian(); + } + return end == DEVICE_BIG_ENDIAN; +} + +/* enum device_endian to MemOp. */ +static inline MemOp devend_memop(enum device_endian end) +{ + return devend_big_endian(end) ? MO_BE : MO_LE; } /* From patchwork Mon Mar 17 18:34:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019884 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id DCE44C282EC for ; Mon, 17 Mar 2025 18:40:13 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJZ-00053l-SZ; Mon, 17 Mar 2025 14:35:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJG-0004ml-7g for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:35 -0400 Received: from mail-pl1-x62a.google.com ([2607:f8b0:4864:20::62a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIX-0006DY-SQ for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:33 -0400 Received: by mail-pl1-x62a.google.com with SMTP id d9443c01a7336-2255003f4c6so82571555ad.0 for ; Mon, 17 Mar 2025 11:34:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236483; x=1742841283; darn=nongnu.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=ipPAyCMNYKQgJ+e1Pj22cNEjWMul6XXi9iVGdQZJ7Rc=; b=e82twBaYUFzQj40G5+oSfwvx+YUSosr/3XOtYbPD5mEhauXKO7mBL45RJZmIEYhXLX t2pv1mjrk7OLFGNgVO+q23jgKIoj6YmdH/hWpiwEObTl0aofb1yZB6N5EdMfV4e6BOb5 VMzv+7qF8FrFOPHdIcR/SybPW74oQcpcDygwMcsYYbHgKdvWtaQdp15WCkP66Af4FBL+ msiSDf7xG0vSPHJ/B861rlI3/b327NRIFWY8e0cxKF1o/PW6+ULC17EWr7Y50AvfrRgi G+8fyrCeQ9U9FhYbjB6OyIUzyqal6Qnxg3NYJwJpzufjtJm9Q6sz+kXJegwq16R52aAE LWiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236483; x=1742841283; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ipPAyCMNYKQgJ+e1Pj22cNEjWMul6XXi9iVGdQZJ7Rc=; b=ShSVv9ZYAeJ2r2w2qqOfSoXQBkYRQyFSHf7EgkjYCwMP5AVGAhmzbXvhOzum8Q20lL KZPaghHfv3qE2FhhCb6bCuuyeKi42lBCeGOx1Mb+NYDNve6TQmnREBngbexr/G9xz64A 6Eumwby3QTVeYi3pWu1C+zpAPC3BGlK9l9bk898aew6z9msyD7eEvj1OOMkLUgsp+BO/ R+pM7ArlYyfJtiVz/K3OhqVR19ZJmss3niXFeouttt+7NZHYhru8GRw+brSSHLckTzY/ uvwJQkNv7ZxHAmaoce2CmerHKzr2DEpLLlxqX2d8O8zxwYJxEdfI5FPYYfL6t2VZ1Fp9 sp+g== X-Gm-Message-State: AOJu0YzxQhdsOT9jUEDsUkqCkPRJfEaPqdZDbLUBcJVoVbtTPmxul8Ip B7RJ942pO+IIop3eg/moqMWLfXHqDfIY3YKJ7pvtc/hVDyRXURUnCnA+iJ5BUK0cWv2CP3KYjoB M X-Gm-Gg: ASbGncuPGI1tIyFwuyN0tRxcza7ueMdHpPhE5pI1P/IYA2L/+0KEFqjcT/LQ4MYyEtq ZPoFmWcP4NxLNTlGpcxAFjk027hUVKH1BHy3nNJYQpEtQN6RNw11TRTAEG5S/cWYkhgAeD/0hp3 FzraTBViKkP11xrLkvHQDKflnasDjdBZyUWivETGg/ePFfrnSnP3A+uhRRqZYEzwEfFg9LpLKQD xkVJf5avn0DkN37BUDZGFrhFAkrjNOe8aQpA9rFu+gjuO+h2IK51rg+fhCSd+s5+DRKv3V1qao3 sS7PLkoGYAWiteb/F+EVeoZv0Fh8Ww7c2S31QK4AlMU9 X-Google-Smtp-Source: AGHT+IEkZnLpN2CL+GDmBOdEKBU4dHJiRJeeADCMAkJ+O9oEFhXHqcZxYnGUH5GSlkI3pMVX0bW4VQ== X-Received: by 2002:a05:6a00:1a87:b0:736:5725:59b9 with SMTP id d2e1a72fcca58-7372236c6b2mr14484100b3a.2.1742236482975; Mon, 17 Mar 2025 11:34:42 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:42 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 16/18] include/exec/memory: move devend functions to memory-internal.h Date: Mon, 17 Mar 2025 11:34:15 -0700 Message-Id: <20250317183417.285700-17-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::62a; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x62a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Only system/physmem.c and system/memory.c use those functions, so we can move then to internal header. Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- include/exec/memory-internal.h | 19 +++++++++++++++++++ include/exec/memory.h | 18 ------------------ 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/include/exec/memory-internal.h b/include/exec/memory-internal.h index b729f3b25ad..c75178a3d6b 100644 --- a/include/exec/memory-internal.h +++ b/include/exec/memory-internal.h @@ -43,5 +43,24 @@ void address_space_dispatch_free(AddressSpaceDispatch *d); void mtree_print_dispatch(struct AddressSpaceDispatch *d, MemoryRegion *root); + +/* returns true if end is big endian. */ +static inline bool devend_big_endian(enum device_endian end) +{ + QEMU_BUILD_BUG_ON(DEVICE_HOST_ENDIAN != DEVICE_LITTLE_ENDIAN && + DEVICE_HOST_ENDIAN != DEVICE_BIG_ENDIAN); + + if (end == DEVICE_NATIVE_ENDIAN) { + return target_words_bigendian(); + } + return end == DEVICE_BIG_ENDIAN; +} + +/* enum device_endian to MemOp. */ +static inline MemOp devend_memop(enum device_endian end) +{ + return devend_big_endian(end) ? MO_BE : MO_LE; +} + #endif #endif diff --git a/include/exec/memory.h b/include/exec/memory.h index 70177304a92..a3bb0542bf6 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -3138,24 +3138,6 @@ address_space_write_cached(MemoryRegionCache *cache, hwaddr addr, MemTxResult address_space_set(AddressSpace *as, hwaddr addr, uint8_t c, hwaddr len, MemTxAttrs attrs); -/* returns true if end is big endian. */ -static inline bool devend_big_endian(enum device_endian end) -{ - QEMU_BUILD_BUG_ON(DEVICE_HOST_ENDIAN != DEVICE_LITTLE_ENDIAN && - DEVICE_HOST_ENDIAN != DEVICE_BIG_ENDIAN); - - if (end == DEVICE_NATIVE_ENDIAN) { - return target_words_bigendian(); - } - return end == DEVICE_BIG_ENDIAN; -} - -/* enum device_endian to MemOp. */ -static inline MemOp devend_memop(enum device_endian end) -{ - return devend_big_endian(end) ? MO_BE : MO_LE; -} - /* * Inhibit technologies that require discarding of pages in RAM blocks, e.g., * to manage the actual amount of memory consumed by the VM (then, the memory From patchwork Mon Mar 17 18:34:16 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019888 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 6B5BCC282EC for ; Mon, 17 Mar 2025 18:40:53 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFJY-00053E-QB; Mon, 17 Mar 2025 14:35:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJG-0004nX-NM for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:34 -0400 Received: from mail-pl1-x631.google.com ([2607:f8b0:4864:20::631]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIX-0006Dk-Cy for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:34 -0400 Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-225df540edcso61416755ad.0 for ; Mon, 17 Mar 2025 11:34:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236484; x=1742841284; darn=nongnu.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=EBRugwqnxw4q7Phz2P050i5IjB6Zbf1WGwdoEilqtkY=; b=wtclrS1vnQKrSCKG+duhvTktAa8YXsFt61dGfLCWkZk6A7N/ihYAKedibD9NuwR3+E S4kRL31mReks20wi5pcKJnTg3ccZt9LSwAwtnwd11YC6lCJX8b88Z78KIVAA5CDS+SPh kOYVSVaMpofKNoMd0rtqtcgXFtUieNIAgrjA9za4q6CR8nsC3XlFi9FR8DXxktnkGp5W LK3dVHPSyiD7Pa+hHP/V+cHAQSXpIjkz87QOo4cb9vVssRSqeI8FfiGyUtK6hi+aeLwx S+O0cFFMUsUzJhZf3gQNrameNDfsIf2aRAqDAm2DCk9mrau/KPc9QZ5Q4y7Oq63qtyqD 3gXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236484; x=1742841284; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=EBRugwqnxw4q7Phz2P050i5IjB6Zbf1WGwdoEilqtkY=; b=IpeHbaA21jMEn9OXurOHzxqNyFgSj7xB4F0DSpDbnvPVgHGpQgfuxSG1BtAtUU6FkH ErjkPh5eQ2l/LAVwSOr+xx+SbbJoIFXp9gFP9lSXgHpJfgrtl+DqVKhZIkAf7XIE1tzu bfXsCJHC07pLoR6zQJnDNx2amU13kXFu1NOsyZ3k/GB2hIvhU10eH5mEcKEFXj6bJdBA 2ax2PFJDwYZHmwdNHVm99QrEgpfZTktntt8e1x8i+I5Ffc4EnG0eJkAwhrgkAx80MNV2 LA3l7mdOzc0Dmpo7gxRJ0YxZJ8wklVYUKJt1N7FbPOsLcowU6D/VQwqxd8OXV42bfRx7 7rsA== X-Gm-Message-State: AOJu0YxeR74E2s21oEVT2qEMSpNAPubDbR+9SKe/OhVSgZhH5WQ1M1o+ f3pSG54qNagvAFHFSSfiKY2C5ZmiodunLjp/sHuoKEX3FM0RSjNcvzL507VS4klSKlU0EzrCOoi 8 X-Gm-Gg: ASbGncucWWimqkg9TJXwUeaadNuxNxnMPoUDeUHqcNaTWMbZ4C3cAsTMMNSSb9NGNbV 3gm82/htRT0Sy0Ob2Inh+kT2n7F98fUtYeLq0hPxYCDGMHqP/FAyUsGR/boqeyJXdO/tEwBHFe+ 2YWFQ8pq5X6Lz3tntaII5X4ZqwvfvrYTVDTyLCIC+QEBheBtphvuLGrv3SzkAcvcHaDi3fE8alb j7F1ZacJbVKDwirD9lwrxRQ2mY4EerCtG78JFyvR6Xas9ip08Z+S4eLsryCPh0mpBZYUphVDV7P n2zwlGMZBwt+1mcd4pIx+RGgNf7HV+yERmdiBtonD4ls X-Google-Smtp-Source: AGHT+IHaIWG93SjaignFKD4IVBdMoq9cQTxlUlmFhZIj0sg1/yp4Pm5Fp9URm2R1oo2C+UJzak1b5Q== X-Received: by 2002:a05:6a00:2e84:b0:736:476b:fccc with SMTP id d2e1a72fcca58-737577c60dcmr700300b3a.8.1742236484037; Mon, 17 Mar 2025 11:34:44 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:43 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 17/18] system/memory: make compilation unit common Date: Mon, 17 Mar 2025 11:34:16 -0700 Message-Id: <20250317183417.285700-18-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::631; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x631.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- system/memory.c | 17 +++++------------ system/meson.build | 2 +- 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/system/memory.c b/system/memory.c index 4c829793a0a..eddd21a6cdb 100644 --- a/system/memory.c +++ b/system/memory.c @@ -353,15 +353,6 @@ static void flatview_simplify(FlatView *view) } } -static bool memory_region_big_endian(MemoryRegion *mr) -{ -#if TARGET_BIG_ENDIAN - return mr->ops->endianness != DEVICE_LITTLE_ENDIAN; -#else - return mr->ops->endianness == DEVICE_BIG_ENDIAN; -#endif -} - static void adjust_endianness(MemoryRegion *mr, uint64_t *data, MemOp op) { if ((op & MO_BSWAP) != devend_memop(mr->ops->endianness)) { @@ -563,7 +554,7 @@ static MemTxResult access_with_adjusted_size(hwaddr addr, /* FIXME: support unaligned access? */ access_size = MAX(MIN(size, access_size_max), access_size_min); access_mask = MAKE_64BIT_MASK(0, access_size * 8); - if (memory_region_big_endian(mr)) { + if (devend_big_endian(mr->ops->endianness)) { for (i = 0; i < size; i += access_size) { r |= access_fn(mr, addr + i, value, access_size, (size - access_size - i) * 8, access_mask, attrs); @@ -2584,7 +2575,8 @@ void memory_region_add_eventfd(MemoryRegion *mr, unsigned i; if (size) { - adjust_endianness(mr, &mrfd.data, size_memop(size) | MO_TE); + MemOp mop = (target_words_bigendian() ? MO_BE : MO_LE) | size_memop(size); + adjust_endianness(mr, &mrfd.data, mop); } memory_region_transaction_begin(); for (i = 0; i < mr->ioeventfd_nb; ++i) { @@ -2619,7 +2611,8 @@ void memory_region_del_eventfd(MemoryRegion *mr, unsigned i; if (size) { - adjust_endianness(mr, &mrfd.data, size_memop(size) | MO_TE); + MemOp mop = (target_words_bigendian() ? MO_BE : MO_LE) | size_memop(size); + adjust_endianness(mr, &mrfd.data, mop); } memory_region_transaction_begin(); for (i = 0; i < mr->ioeventfd_nb; ++i) { diff --git a/system/meson.build b/system/meson.build index bd82ef132e7..4f44b78df31 100644 --- a/system/meson.build +++ b/system/meson.build @@ -2,7 +2,6 @@ specific_ss.add(when: 'CONFIG_SYSTEM_ONLY', if_true: [files( 'arch_init.c', 'ioport.c', 'globals-target.c', - 'memory.c', )]) system_ss.add(files( @@ -15,6 +14,7 @@ system_ss.add(files( 'dma-helpers.c', 'globals.c', 'memory_mapping.c', + 'memory.c', 'physmem.c', 'qdev-monitor.c', 'qtest.c', From patchwork Mon Mar 17 18:34:17 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierrick Bouvier X-Patchwork-Id: 14019887 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3F0B2C35FF8 for ; Mon, 17 Mar 2025 18:40:30 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tuFLO-0006rO-MB; Mon, 17 Mar 2025 14:37:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tuFJO-0004wA-J1 for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:42 -0400 Received: from mail-pl1-x632.google.com ([2607:f8b0:4864:20::632]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tuFIb-0006E7-1M for qemu-devel@nongnu.org; Mon, 17 Mar 2025 14:35:42 -0400 Received: by mail-pl1-x632.google.com with SMTP id d9443c01a7336-22438c356c8so83697135ad.1 for ; Mon, 17 Mar 2025 11:34:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1742236485; x=1742841285; darn=nongnu.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=pdsNHldr91xnqdGHk1DTLXuYnmkD/cCe/HKmA2EoKL4=; b=bv2EfyrDbwpspLWOAJosLQNUVAJiyDbDctswELIXN3fPdiN+2ZrM4Whx6Qh70uvltq Bt8+ff8uZaF/6z/yWSmVux8m8eIGgMjb4I9Dy8XFvceK2awta9NpekLW6uFhRo/tvxMr 8Rek45fNzRgTG72ehlePFgxFQIJ+3CkSgxQomDyouQ2X8w9O8VbjOBWsYmqPCoFB7HUF 5lUV+YpUhU8GZAVhE2UblhKaesohNXKUiwYvDTErr7FuAJgU9vT3mXw5ZBOGjNH8aKzp THIlgIoXojLP9xgomr5BvLK+QX5VNDQwDBt3LaLA5MkjvOPw4mHYTSSR8ZxLzCOe/DfL EXNQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1742236485; x=1742841285; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=pdsNHldr91xnqdGHk1DTLXuYnmkD/cCe/HKmA2EoKL4=; b=XlTieaKdlvQryJVp4HsitgF7L1ZANQq4RwYgiIL0tIuD/woGFjxWL1BBwv0uG7xZg1 V1gbc6CBLLWA6eBbJmOh2Fg+unTPBtjt5KvGuZFnKwSBpnxzv9c0Udq27zYSfJdGXFk0 GyKCp2Sv0qtGeWe2VC60wJ8IaHQ4PScgW0yXyvvlES4mEM5euJ/SO4a99nkn3G22t1jc vHO84hdtS/ZVN5H0pu30oKd1/bp0OAGvJubmdX84km8zq4s+N40Q2Y6sRqRB/f8y+uH6 uzqXHhEyfWiB9D/zyLkCevHZkdn7GQkWArLsZfZ41OWCtkZjc8mg1pUgnvGChLA9FYnW LgpQ== X-Gm-Message-State: AOJu0YyNfFvhUroB45DA30NQxcAkAoKfC8EbB0XXDbTFlLPnmVni1IhJ 9re3t5YrV6Vb7Xwq9HhfLnr6ARddJFRvR8F1Po8SseJCyR08+Jbc0G6Y8n9kozq58EAxwAizZHk q X-Gm-Gg: ASbGncuX3QW7ersgcGur9O3hgiIPoWNRaIURSaf3eFW5sYFbB4CYac6hU/XSkuAKVVj SIKv0WFi+QZOIeAwcJh2eQ9/gSqOthn9OfkdY+K1I+JTClhIzfzh4mPzaVoa5OUEpWlqLRmoln0 m+DbG1ILu84h3b2EhF86lniuhLD1iRStswbivd7GT7xKeccMnhl4IBDqbypqwj+85prRo/q7ck2 tI3+xPexPkhjNmaleocEdxYUWtMicYUa+FaYKxxOaqxNdS7DP14axE3mPhFBjZI6OAaCV5I0o70 I3Uu9YNf7hfNBs5SGl4HROq0pHfAf9VHjzGwtbAeQOf1 X-Google-Smtp-Source: AGHT+IHzNNUW3sLQt1T364FsCohrjLgSsBCXmjd/XRyR5B72Si2GIa2LUJ+5Zkf6gr6cDVKPRd/CWg== X-Received: by 2002:a05:6a00:b95:b0:736:3d7c:2368 with SMTP id d2e1a72fcca58-73722353269mr15820164b3a.7.1742236485130; Mon, 17 Mar 2025 11:34:45 -0700 (PDT) Received: from pc.. ([38.39.164.180]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73711695a2esm8188770b3a.144.2025.03.17.11.34.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Mar 2025 11:34:44 -0700 (PDT) From: Pierrick Bouvier To: qemu-devel@nongnu.org Cc: Paul Durrant , xen-devel@lists.xenproject.org, David Hildenbrand , "Edgar E. Iglesias" , qemu-riscv@nongnu.org, Liu Zhiwei , Paolo Bonzini , Harsh Prateek Bora , alex.bennee@linaro.org, manos.pitsidianakis@linaro.org, Daniel Henrique Barboza , Richard Henderson , Alistair Francis , qemu-ppc@nongnu.org, =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= , Weiwei Li , kvm@vger.kernel.org, Palmer Dabbelt , Peter Xu , Yoshinori Sato , Anthony PERARD , Stefano Stabellini , Nicholas Piggin , Pierrick Bouvier Subject: [PATCH v6 18/18] system/ioport: make compilation unit common Date: Mon, 17 Mar 2025 11:34:17 -0700 Message-Id: <20250317183417.285700-19-pierrick.bouvier@linaro.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250317183417.285700-1-pierrick.bouvier@linaro.org> References: <20250317183417.285700-1-pierrick.bouvier@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::632; envelope-from=pierrick.bouvier@linaro.org; helo=mail-pl1-x632.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Reviewed-by: Richard Henderson Signed-off-by: Pierrick Bouvier --- system/ioport.c | 1 - system/meson.build | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/system/ioport.c b/system/ioport.c index 55c2a752396..89daae9d602 100644 --- a/system/ioport.c +++ b/system/ioport.c @@ -26,7 +26,6 @@ */ #include "qemu/osdep.h" -#include "cpu.h" #include "exec/ioport.h" #include "exec/memory.h" #include "exec/address-spaces.h" diff --git a/system/meson.build b/system/meson.build index 4f44b78df31..063301c3ad0 100644 --- a/system/meson.build +++ b/system/meson.build @@ -1,6 +1,5 @@ specific_ss.add(when: 'CONFIG_SYSTEM_ONLY', if_true: [files( 'arch_init.c', - 'ioport.c', 'globals-target.c', )]) @@ -13,6 +12,7 @@ system_ss.add(files( 'dirtylimit.c', 'dma-helpers.c', 'globals.c', + 'ioport.c', 'memory_mapping.c', 'memory.c', 'physmem.c',