From nobody Mon Apr 13 02:02:09 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=quarantine dis=none) header.from=suse.com ARC-Seal: i=1; a=rsa-sha256; t=1771255241; cv=none; d=zohomail.com; s=zohoarc; b=kO9LNhZKuKB4Ac1dlEU0NT1GzgJSsXk9FnRCafr3g/4yJifIBsfZ8UB26LrGVgyuy8Ul5IO+iWxKR/63KVjHCkY9j/zokuTfU7NAvXaMxAD+0NaPYqSX224bgbuO84gCY/TEwXHybyCFSGLLcmuBPAs6HwaZYlTLqSQN41qazac= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771255241; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=YqPJRfAuuc4mR7oxi/5rCForRC4R+jusPwWyInbjJ4E=; b=MIhkNr/FxKGoPViIh/2JjpyS1NOaWT+wb8j1LASqChbQzKIHboFoCbs4rI55vDnRQM1s2hEDarzZ56/FhgRuQwonBcNYaGEe4wYz8FEKkI8aqXX6w/KIY9zWR8Q0uI6u0ztWIBnL+5I+jrVYeFEr7ODa7/GBOv6vfKPtuj/wibc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 177125524104990.63997147529699; Mon, 16 Feb 2026 07:20:41 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.1234268.1537568 (Exim 4.92) (envelope-from ) id 1vs0Oa-0007gQ-Ie; Mon, 16 Feb 2026 15:20:20 +0000 Received: by outflank-mailman (output) from mailman id 1234268.1537568; Mon, 16 Feb 2026 15:20:20 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vs0Oa-0007gJ-Fi; Mon, 16 Feb 2026 15:20:20 +0000 Received: by outflank-mailman (input) for mailman id 1234268; Mon, 16 Feb 2026 15:20:19 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vs0OZ-0007gB-OP for xen-devel@lists.xenproject.org; Mon, 16 Feb 2026 15:20:19 +0000 Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com [2a00:1450:4864:20::42b]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id ff9b04db-0b4a-11f1-9ccf-f158ae23cfc8; Mon, 16 Feb 2026 16:20:17 +0100 (CET) Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-436317c80f7so3596542f8f.1 for ; Mon, 16 Feb 2026 07:20:17 -0800 (PST) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4834d8334a8sm482769535e9.12.2026.02.16.07.20.15 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 16 Feb 2026 07:20:15 -0800 (PST) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: ff9b04db-0b4a-11f1-9ccf-f158ae23cfc8 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1771255216; x=1771860016; darn=lists.xenproject.org; h=content-transfer-encoding:autocrypt:subject:from:cc:to :content-language:user-agent:mime-version:date:message-id:from:to:cc :subject:date:message-id:reply-to; bh=YqPJRfAuuc4mR7oxi/5rCForRC4R+jusPwWyInbjJ4E=; b=OYnCIVRk1mzoH5mA6M74wrPj6LipdrHKQCttNatxbo6aaQhccxR48jUGFcZrziS0Gl ipjGeGboBP3gp8/RPWbG8xgUflzSc2lEZ9Cyy4/fvOzEl1+jOg+TnU1jpbx2sCpoXVsk AVRuGvxkiUDCbtuNTf8JBo/LEbAJACFR4BdVuk1QnwMHQlxYS2V94KKKNA+rgQmCt7sQ Bgh53NeDgoe4gMokp1znb+4h6LOE3tAuehILUoCyGqM2/WGrmUZm+QKK0QEbTlPzX0tj r0Xj1dbqJ2wXvi6qPV4A7gHtSeXQX/xkVYJP3vO0XpgN6Nqs4BUmlI9YQdpFagN2bZYi FT2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771255216; x=1771860016; h=content-transfer-encoding:autocrypt:subject:from:cc:to :content-language:user-agent:mime-version:date:message-id:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=YqPJRfAuuc4mR7oxi/5rCForRC4R+jusPwWyInbjJ4E=; b=jp9of5e3plgxDk63VXa9ZQTSsB9AP77/D/+iSq9G6yrOyayLK/MGJMuZeclgclGZQX XkMlTZmQdeeLVEu7vNbuee+CpaVZp5hCPn9Yp9ZaPzxGnUIUKHrfn/9P3pF/y+p8vbs3 Ih8qHTeyH6fufQqtgi2jXQWfDWa1j/2P1AHNOLyQmoPZRsb/2lqJz9OgTRS23QSdK6OL mxGClCYQLr5JN6bt8qJxr5on5jAs5JVvw0b6oV7nLpCwWWcDW0kfB+zwMg2OoRTYUEGN upz5Fhu8QO6s72R4XBNigb//YWiIdgMCyAJLKXr4pF30yHuaNMiW/oteALOHtEIUkQmi Ekeg== X-Gm-Message-State: AOJu0Yx5a3HW8dMoSvBTWLm5TH5qt2CiQOslwmXMf/e2burLSwxZcCsm yIG6/jf0TSxbir6eb3VYolcDEVtHmrbD3O0w9J1tFHGofE/jbZDijwxxVTIT+QIj/OQW214pxoN 4NEM= X-Gm-Gg: AZuq6aK/sgIxpPZddFc4a/ZVOhPOpFSy40MxhNREULYPIPoq8L1w26fh93hwkfZPSb6 UG2nnCXZBquTXkVf3jcxTvthDrqkv2segsHfNnlKX1Q+AphGloVTsHFhxZtfAOMdml6ieyTnYaT kE5I4AZt72uerGxf4+4/f069Ks7FnVnX2GaH/AGUkr/gP8qDifv/gzrVgAgU90CgvXTAA6U2bR0 VM8rFkeFnQhiC4Lnl6UC3q+yTUwZbziTWQvQY58Kojg/q6uuXgl1/WuZ4P5iLpxbIX3oLClTsTQ g0YGm/a2yp0IfMeO3NIqtDQODJyYuSOf+LQGCA2gPO08OYSjd4SJAEPsvHpRnd92mJ1s7xg5GGD KRdcF+5cmYK4GGc8wgIvVuHULOm6WSIwKj4cqRgH6oO4P/lUTG2NXPrdYhegTxd6CpMbPg7IW8l Qc1pYSjEsa4ygrdIiNGVSVzH09frgUrhztc6TSOPUZBxMLE0+znLirLx6QoWeYoSArtnOQqnzrr JX/AisZxvs7n9A= X-Received: by 2002:a05:600c:468b:b0:47e:e981:78b4 with SMTP id 5b1f17b1804b1-48378d9ccd4mr148844955e9.12.1771255216335; Mon, 16 Feb 2026 07:20:16 -0800 (PST) Message-ID: <1d898900-1072-4ea6-ac4c-1262905cab29@suse.com> Date: Mon, 16 Feb 2026 16:20:18 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: "xen-devel@lists.xenproject.org" Cc: Julien Grall , Stefano Stabellini , Volodymyr Babchuk , Bertrand Marquis , Michal Orzel , Oleksii Kurochko From: Jan Beulich Subject: [PATCH] Arm: tighten translate_get_page() Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @suse.com) X-ZM-MESSAGEID: 1771255242444154100 Content-Type: text/plain; charset="utf-8" Permitting writes when the P2M type says "read-only" can't be correct. Fixes: 1661158723a ("xen/arm: Extend copy_to_guest to support copying from/= to guest physical address") Signed-off-by: Jan Beulich Reviewed-by: Michal Orzel --- What exactly p2m_ram_ro means on Arm is unclear: The comment next to its definition says one thing, its use in get_page_from_gfn() says another. (I remember raising this point before, i.e. it feels a little odd that the ambiguity still exists.) The patch here assumes the comment is what is wrong. --- a/xen/arch/arm/guestcopy.c +++ b/xen/arch/arm/guestcopy.c @@ -44,7 +44,7 @@ static struct page_info *translate_get_p if ( !page ) return NULL; =20 - if ( !p2m_is_ram(p2mt) ) + if ( write ? p2mt !=3D p2m_ram_rw : !p2m_is_ram(p2mt) ) { put_page(page); return NULL;