[{"id":3678942,"web_url":"http://patchwork.ozlabs.org/comment/3678942/","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-devel-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-devel-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 4fyHg54W6hz1y1V\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 18 Apr 2026 13:44:17 +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-devel-bounces@nongnu.org>)\n\tid 1wDwae-00076G-CG; Fri, 17 Apr 2026 23:43:28 -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-00075m-L8\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 23:43:27 -0400","from mail-vk1-xa44.google.com ([2607:f8b0:4864:20::a44])\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-000230-8n\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 23:43:27 -0400","by mail-vk1-xa44.google.com with SMTP id\n 71dfb90a1353d-56a857578a8so503408e0c.3\n for <qemu-devel@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=Jn+m9dL0bdnGAokt1RIz0vAAGwx6IImpT4HVfnr3dVu0lPyv3eBJdnWxeDwFwAEFbg\n ngnuXK2tUqWslW7b7/no2UKtbODTUuII+HR6/35MDAEX+hGW68xdXwlWmHnFEOcFlWij\n ud6JSlSlkaxEZCw1gY+NieJzkmLYjka3VvY2NOaWy9FZePN0UzDSlfGVCDY8zLlmzDhM\n j7NhHk1LMWSfKlsHsR6c6Fr4UKuY2MVIrE1bRPl1c/S3c6QQv/TY1N6GLACzoQIe0QFU\n oXHTJr7Olbuq0yAspFfWNY/mQ1hsjGsSFeHULA+zC6uHWOOGCsOyk4z7uyTpjsTYWaig\n wipg==","X-Forwarded-Encrypted":"i=1;\n AFNElJ+qV5rYhFyrYJRjR7sMFek1dGs4OQrHT0IltX87zc2v33K9zWQkVYL4nebz7Hz3U6vXv9uHbPV3dg+r@nongnu.org","X-Gm-Message-State":"AOJu0Yyf4/BN9JInun6xr15s9X+gQz+mm0Hi0Olb3I+k1o4CZSYJc1Bj\n ApeIedigSa7nzIqCMBpGzBd6G0qVwdmNTnJU21Ygks7yzT6ys7kKLXjT","X-Gm-Gg":"AeBDiesCLlG8EOrccSqJkzW2Ki4UD/s0NIQGzWxktBKA5eEPQswc7YqXXEMEPEAzlYT\n DFOePLVBR2SVV51lwSKd1YA9udegb/4W88odD9RLgo2BDYq9PL0JYArizu03v9vD0yAGcoGoiXA\n 3qjS6ZBB5ijmxw4NrdueAbhnNoxDrQr0mBinEPyINe8w2seKxaHcHtKjF+G5hdPiAdvRHcQWTG1\n r8sIt7Jj8zyj9KT7cT6r+MJtFU02bcEzX8DMjSTOyWraeQTs/2mou0+qB7218XPEiao7ARPgfwM\n omdVugVqtZ5Vs4HSnXFHlvZhLnKRUyaya04n6noex+bCZ6pEIGZZ9LuIl638fynDvol3LbZ5S/S\n 70NxkNa24I4MM9bdh0GV0YfgqlyyCew7nfN26cetrI/qSfX2KUdbL291kfB9DSX1EYdU30hOUwF\n dtMZlQvDqibm8v8Coc5N7l2G2/JioUdr+w0Au4Lzcl4akfKW6rdDlXYFUL42WA5vc3ykXQa6z7/\n /I8aaqkFZA=","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::a44;\n envelope-from=chao.liu.zevorn@gmail.com; helo=mail-vk1-xa44.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-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"qemu development <qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"}}]