[{"id":3678941,"web_url":"http://patchwork.ozlabs.org/comment/3678941/","msgid":"<aeL9to3kuG2L2dKC@ZEVORN-PC.localdomain>","list_archive_url":null,"date":"2026-04-18T03:43:00","subject":"Re: [PATCH 01/17] target/riscv: Make get_phys_page_debug handle\n non-page-aligned addrs","submitter":{"id":92265,"url":"http://patchwork.ozlabs.org/api/people/92265/","name":"Chao Liu","email":"chao.liu.zevorn@gmail.com"},"content":"On Fri, Apr 17, 2026 at 06:30:49PM +0100, Peter Maydell wrote:\n> Currently our implementations of SysemuCPUOps::get_phys_page_debug\n> and SysemuCPUOps::get_phys_page_attrs_debug are a mix of \"accepts a\n> non-page-aligned virtual address and returns the corresponding\n> non-page-aligned physical address\" and \"only returns a page-aligned\n> physical address\".  This is awkward for callsites, which in practice\n> all want the physical address for an arbitrary virtual address and\n> have to work around the possibility of getting a page-aligned\n> address, and it doesn't account for protection being possibly on a\n> sub-page-sized granularity.  We want to standardize on the\n> implementation having to handle non-page-aligned addresses.\n> \n> The only thing in the riscv implementation that we need to fix\n> is the place where we explicitly round the return value down to\n> a page boundary before returning it. Drop that.\n> \n> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>\nReviewed-by: Chao Liu <chao.liu.zevorn@gmail.com>\n\nThanks,\nChao\n> ---\n>  target/riscv/cpu_helper.c | 2 +-\n>  1 file changed, 1 insertion(+), 1 deletion(-)\n> \n> diff --git a/target/riscv/cpu_helper.c b/target/riscv/cpu_helper.c\n> index dd6c861a90..475e9cfd57 100644\n> --- a/target/riscv/cpu_helper.c\n> +++ b/target/riscv/cpu_helper.c\n> @@ -1677,7 +1677,7 @@ hwaddr riscv_cpu_get_phys_page_debug(CPUState *cs, vaddr addr)\n>          }\n>      }\n>  \n> -    return phys_addr & TARGET_PAGE_MASK;\n> +    return phys_addr;\n>  }\n>  \n>  void riscv_cpu_do_transaction_failed(CPUState *cs, hwaddr physaddr,\n> -- \n> 2.43.0\n>","headers":{"Return-Path":"<qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=i2YAv9ks;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists1p.gnu.org;\n envelope-from=qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fyHfh2RF2z1y1V\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 18 Apr 2026 13:43:54 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-ppc-bounces@nongnu.org>)\n\tid 1wDwaf-00076z-5k; Fri, 17 Apr 2026 23:43:29 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <chao.liu.zevorn@gmail.com>)\n id 1wDwad-00075J-D5\n for qemu-ppc@nongnu.org; Fri, 17 Apr 2026 23:43:27 -0400","from mail-vk1-xa41.google.com ([2607:f8b0:4864:20::a41])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <chao.liu.zevorn@gmail.com>)\n id 1wDwab-000233-6I\n for qemu-ppc@nongnu.org; Fri, 17 Apr 2026 23:43:27 -0400","by mail-vk1-xa41.google.com with SMTP id\n 71dfb90a1353d-5637886c92aso540296e0c.0\n for <qemu-ppc@nongnu.org>; Fri, 17 Apr 2026 20:43:24 -0700 (PDT)","from ZEVORN-PC.localdomain ([162.244.208.119])\n by smtp.gmail.com with ESMTPSA id\n a1e0cc1a2514c-9589097ec5csm1719242241.4.2026.04.17.20.43.09\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Fri, 17 Apr 2026 20:43:21 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1776483803; x=1777088603; darn=nongnu.org;\n h=in-reply-to:content-disposition:mime-version:references:message-id\n :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to;\n bh=Gf+jNGWsKroQLTB6YzgFMpQGPeobJncLTcLFEvWLsr8=;\n b=i2YAv9ksxfhA20oQPB1uMpinHbrmJeNnAQee+Na1rt3Bq76OM+w9gl2buiK6M7EpSy\n MdNGoaw9yHBPpKuSVpRKJFeYekSIh0q4eFICO7/BtSw0+3mGbe4e0L007Y8/RvZ/cJFN\n K0A80bHKEIL/OWT2581QxwEpq9DI/n7LHE2gUR1sAJQZUkaB8eOpYcc6m4uxXwxrPxyc\n xx8di6EtxZKdugiZFjwnpBNO+g4Y9hadnMW+iWRvNoQdB6aCnR4kFUi5G2LwDe/zDtz8\n g0LcDhEzjzul+Jrdv+jKZje7XT5rYz5mH7sX+mk6gI+wLoAkicocQa1rPtjRyDzeFSqq\n al/A==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776483803; x=1777088603;\n h=in-reply-to:content-disposition:mime-version:references:message-id\n :subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=Gf+jNGWsKroQLTB6YzgFMpQGPeobJncLTcLFEvWLsr8=;\n b=e0D6t/sMsCEUPOBmYRCL7qtrmPCc49rJparbA+YL7RMdUgmHDOBhkjeIu3jHih3rJk\n wn0WbEyhF8Yx2mKtTDyawmNetwgORFDvfjF3q49E7BsaQs8gIl1cQJunhkLxAHGgPCiI\n d1OPg2b7gm8iqG7OR2P5Nhh89UURLMd7BK6i7uuF0Z+fEM4TLVYEB/uZ6cdC6JLlX27k\n YrwlyYh07x9FpXQTq3vTCU++huhiOUDIPME15JfvNHTYSY8AL7boblaq9k4uSTn/6MP+\n VZtcCLMG/k+wVfy+Xwks17WvW+gdMVRyVU/ej4bNyTqzs71946fEAUFumcFUJXrJVHDL\n pKFg==","X-Forwarded-Encrypted":"i=1;\n AFNElJ/rkWp6nu9YM0Ybf72toJ7ppENNa9OSuogI5IWxIhTfVt6Kztf2BJLWT554F2HVnY2cX33tg8W1uw==@nongnu.org","X-Gm-Message-State":"AOJu0YwLOD5oRKcyOtpQ8U1S5UsOV3HpFTjGu4Zk/ZT+GDp80Z+oHvi1\n GAOE6FCa7MWeoALOYz6ntGXlrpbRd+sXBC/OeU3mrcAtzKMeKTFvIqu2","X-Gm-Gg":"AeBDieu2OyYMdGImKwPhnDEAn3TNnCRL2P5Npmz1j3lMRBEXqBwCpQ+6LCKX8h40Zm5\n WE2ujVx2txrK+kmOHOFq2RoScpPKAhQS6arQ76RzvR+jdbyNiCORHyYAuMXGJVlVcyeuTwUIQgR\n UyG2E8ksU+/DWhEI/RwZk5n5QjY7QGypNnKURS9twxtv7sXOtpVk5xfZnybW7UIMNfc3WfVFQrB\n wzDbbVwISBl9d6fbwAKfKjnpskBLjEY5KfxN7rVhoc8GfxsJYTS78cZPa0sIYtVpSchzjPkZwis\n bY44XXmiAgzIannhlmIR70YEy1eKH7Cj76+EGgN2DZJmvikB///2xmenxZaodiARSx0VgOlJ92Z\n P4d6iCW9Dts9aULe7ZRZUxGA+4cyt06PpVeKOXxGIGgZGO6UO7sxMIQIOnv3TOlm8TUVbctIERe\n Ne0wHYq5gFHnXOm370LU7D6xfJg7V1WcIy/IPwAVC66D9z6f8FnqXCPDztSOSIWLTAQmsaY+fnl\n 8T50Rv7G+4=","X-Received":"by 2002:a05:6102:2927:b0:608:9a34:c8ea with SMTP id\n ada2fe7eead31-616f68d7618mr2747367137.10.1776483802867;\n Fri, 17 Apr 2026 20:43:22 -0700 (PDT)","Date":"Sat, 18 Apr 2026 11:43:00 +0800","From":"Chao Liu <chao.liu.zevorn@gmail.com>","To":"Peter Maydell <peter.maydell@linaro.org>","Cc":"qemu-arm@nongnu.org, qemu-devel@nongnu.org, qemu-ppc@nongnu.org,\n  qemu-riscv@nongnu.org, qemu-s390x@nongnu.org,  Philippe =?utf-8?q?Mathieu-?=\n\t=?utf-8?q?Daud=C3=A9?= <philmd@linaro.org>,\n Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,\n  Yanan Wang <wangyanan55@huawei.com>, Zhao Liu <zhao1.liu@intel.com>,\n  Paolo Bonzini <pbonzini@redhat.com>,\n Richard Henderson <richard.henderson@linaro.org>,\n  \"Dr. David Alan Gilbert\" <dave@treblig.org>,\n Alex =?utf-8?q?Benn=C3=A9e?= <alex.bennee@linaro.org>,\n  Alexandre Iooss <erdnaxe@crans.org>,\n Mahmoud Mandour <ma.mandourr@gmail.com>,  Peter Xu <peterx@redhat.com>,\n \"Edgar E. Iglesias\" <edgar.iglesias@gmail.com>,\n  Jiaxun Yang <jiaxun.yang@flygoat.com>, Nicholas Piggin <npiggin@gmail.com>,\n  Chinmay Rath <rathc@linux.ibm.com>, Glenn Miles <milesg@linux.ibm.com>,\n  Palmer Dabbelt <palmer@dabbelt.com>,\n Alistair Francis <alistair.francis@wdc.com>,\n  Weiwei Li <liwei1518@gmail.com>,\n Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>,\n  Liu Zhiwei <zhiwei_liu@linux.alibaba.com>,\n Ilya Leoshkevich <iii@linux.ibm.com>, David Hildenbrand <david@kernel.org>,\n Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>,\n  Artyom Tarasenko <atar4qemu@gmail.com>","Subject":"Re: [PATCH 01/17] target/riscv: Make get_phys_page_debug handle\n non-page-aligned addrs","Message-ID":"<aeL9to3kuG2L2dKC@ZEVORN-PC.localdomain>","References":"<20260417173105.1648172-1-peter.maydell@linaro.org>\n <20260417173105.1648172-2-peter.maydell@linaro.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=us-ascii","Content-Disposition":"inline","In-Reply-To":"<20260417173105.1648172-2-peter.maydell@linaro.org>","Received-SPF":"pass client-ip=2607:f8b0:4864:20::a41;\n envelope-from=chao.liu.zevorn@gmail.com; helo=mail-vk1-xa41.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,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-ppc@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<qemu-ppc.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-ppc>,\n <mailto:qemu-ppc-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-ppc>","List-Post":"<mailto:qemu-ppc@nongnu.org>","List-Help":"<mailto:qemu-ppc-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-ppc>,\n <mailto:qemu-ppc-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-ppc-bounces+incoming=patchwork.ozlabs.org@nongnu.org"}}]