From nobody Sun Dec 14 11:58:17 2025 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 header.i=teddy.astie@vates.tech; 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=reject dis=none) header.from=vates.tech ARC-Seal: i=1; a=rsa-sha256; t=1764250803; cv=none; d=zohomail.com; s=zohoarc; b=S8N0bDocMXd4xUm+FLkNPNb5N1+dYro1xJzwgMUlLeID+e1+KLrCAoCe/0bdEJ+pmWWandFNftJ6ly8kY7siDggDfaiOfg5/xI/gfZ8feS+ciSJokIKUtsvUIenCKXd1tpw+Waf+OF0T0cAEf/RL5iFB1v1Z1MOr14jfQsZPwd8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1764250803; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=NFHk6HqtAfIPdwrhM3fd+af+o9jmpJwjBhaopH82WXE=; b=NgGxXpF7UVKldzv6+sR7IY9B/EyncDkJQxQkqg6UU0AHTcJbdXAkjx78j/Gann57U/TZqbZXSq2gErZSwf/wLq4PXas6IVNYUCQgQ5vIJbul7Lt5k+j/ob2M/KGu63WIokmfzznuMHyr/05Laf60abxtvccsvUHaOmhlgKobIPM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=teddy.astie@vates.tech; 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=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1764250803485439.4234737446187; Thu, 27 Nov 2025 05:40:03 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.1173859.1498861 (Exim 4.92) (envelope-from ) id 1vOcDq-0007k5-FO; Thu, 27 Nov 2025 13:39:46 +0000 Received: by outflank-mailman (output) from mailman id 1173859.1498861; Thu, 27 Nov 2025 13:39:46 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vOcDq-0007jw-Cg; Thu, 27 Nov 2025 13:39:46 +0000 Received: by outflank-mailman (input) for mailman id 1173859; Thu, 27 Nov 2025 13:39:44 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vOcDo-0007Up-Rn for xen-devel@lists.xenproject.org; Thu, 27 Nov 2025 13:39:44 +0000 Received: from mail132-18.atl131.mandrillapp.com (mail132-18.atl131.mandrillapp.com [198.2.132.18]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 87cb122a-cb96-11f0-9d18-b5c5bf9af7f9; Thu, 27 Nov 2025 14:39:44 +0100 (CET) Received: from pmta09.mandrill.prod.atl01.rsglab.com (localhost [127.0.0.1]) by mail132-18.atl131.mandrillapp.com (Mailchimp) with ESMTP id 4dHHbc6hNSzCf9Xss for ; Thu, 27 Nov 2025 13:39:40 +0000 (GMT) Received: from [37.26.189.201] by mandrillapp.com id cacd861e097f4c97bf6a85a68f58cfd7; Thu, 27 Nov 2025 13:39:40 +0000 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: 87cb122a-cb96-11f0-9d18-b5c5bf9af7f9 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mandrillapp.com; s=mte1; t=1764250780; x=1764520780; bh=NFHk6HqtAfIPdwrhM3fd+af+o9jmpJwjBhaopH82WXE=; h=From:Subject:To:Cc:Message-Id:In-Reply-To:References:Feedback-ID: Date:MIME-Version:Content-Type:Content-Transfer-Encoding:CC:Date: Subject:From; b=W+jCDs/2ux8HeUNhEERYJPgcYvWNPMBGLE0wvLOsMrkUV2/1G2OWVNPnyDN1gs3M/ C/UVICpOb/Dg1q4gjOieybpLp7qGdNCZDJBDCtbaFR/NLCOIrbH+5HDEjeI9tZ6z0n JPdNuiTRVLS8KxAe4GLBmRmPu6JZj9hWbIFXJWEWwwTHIp9TH0saQLgOgrBskMT5rJ 8tTXCDMwV4so3u/1b8WGHMtEp85yi1ROsrb9Ey0loEBBe8K8Dm/XGrKckinLOVozmm ARq5+VWJ7w+fIjqGYuZ5PZWd/MBRUXHfbBmQ9UzSCVnsyssQt58mkfoMbb1Il5Usz8 O88CCL8GBgzkg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vates.tech; s=mte1; t=1764250780; x=1764511280; i=teddy.astie@vates.tech; bh=NFHk6HqtAfIPdwrhM3fd+af+o9jmpJwjBhaopH82WXE=; h=From:Subject:To:Cc:Message-Id:In-Reply-To:References:Feedback-ID: Date:MIME-Version:Content-Type:Content-Transfer-Encoding:CC:Date: Subject:From; b=fMEyq/5ghm7gNVxfoA6vLNd7aOjnrsDgdkfg/PBeqfT9XzUqFENBkNPwH88zMfedi rQH2O5wmhc9VISVqzGzryVWYafxsI3QA8i5lR4dX47bxRoG9uMmZnB3IYFk+qMemNx 7yUvhX1qQl+riz7Rw+zXZYwc/DOOKaZL1zzPKPslLnx21u6xOqTqdJstRBr89iRkTo hAmxR7E8mtfNS7GkPCkD5gckxqvwbc4NEwLqmrsYFn7ePa7sDWrPuFd48ptksjgZ+K +w4OLEiByOEKozdChrFg8QtYn79q31nsRjfXQm+WF4+B2j25sS1b5YuPZsw5ysU2rY 50S4d+hdUq0hQ== From: "Teddy Astie" Subject: =?utf-8?Q?[RFC=20PATCH=203/4]=20x86/p2m-pt:=20Set=20p2m->need=5Fflush=20if=20page=20was=20present=20before?= X-Mailer: git-send-email 2.51.2 X-Bm-Disclaimer: Yes X-Bm-Milter-Handled: 4ffbd6c1-ee69-4e1b-aabd-f977039bd3e2 X-Bm-Transport-Timestamp: 1764250779949 To: xen-devel@lists.xenproject.org Cc: "Teddy Astie" , "Jan Beulich" , "Andrew Cooper" , "=?utf-8?Q?Roger=20Pau=20Monn=C3=A9?=" Message-Id: <8f5a0cecba14cd38d739a9f29a5c8344c2f6bd11.1764248710.git.teddy.astie@vates.tech> In-Reply-To: References: X-Native-Encoded: 1 X-Report-Abuse: =?UTF-8?Q?Please=20forward=20a=20copy=20of=20this=20message,=20including=20all=20headers,=20to=20abuse@mandrill.com.=20You=20can=20also=20report=20abuse=20here:=20https://mandrillapp.com/contact/abuse=3Fid=3D30504962.cacd861e097f4c97bf6a85a68f58cfd7?= X-Mandrill-User: md_30504962 Feedback-ID: 30504962:30504962.20251127:md Date: Thu, 27 Nov 2025 13:39:40 +0000 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity teddy.astie@vates.tech) (identity @mandrillapp.com) X-ZM-MESSAGEID: 1764250803924019201 Content-Type: text/plain; charset="utf-8" Update p2m->need_flush if page was present before (requiring a tlb flush). This causes p2m->flush_tlb() to be now be reachable, make sure we call it only when set. Signed-off-by: Teddy Astie --- This change is important for the next patch. Would it be better to merge it with the next patch ? xen/arch/x86/mm/p2m-pt.c | 3 +++ xen/arch/x86/mm/p2m.c | 6 ++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/mm/p2m-pt.c b/xen/arch/x86/mm/p2m-pt.c index 5a6ce2f8bc..1fea3884be 100644 --- a/xen/arch/x86/mm/p2m-pt.c +++ b/xen/arch/x86/mm/p2m-pt.c @@ -143,6 +143,9 @@ static int write_p2m_entry(struct p2m_domain *p2m, unsi= gned long gfn, if ( p2m->write_p2m_entry_post ) p2m->write_p2m_entry_post(p2m, oflags); =20 + if ( oflags & _PAGE_PRESENT ) + p2m->need_flush =3D true; + paging_unlock(d); =20 if ( nestedhvm_enabled(d) && !p2m_is_nestedp2m(p2m) && diff --git a/xen/arch/x86/mm/p2m.c b/xen/arch/x86/mm/p2m.c index e2a00a0efd..98f8272270 100644 --- a/xen/arch/x86/mm/p2m.c +++ b/xen/arch/x86/mm/p2m.c @@ -274,7 +274,8 @@ void p2m_tlb_flush_sync(struct p2m_domain *p2m) if ( p2m->need_flush ) { p2m->need_flush =3D 0; - p2m->tlb_flush(p2m); + if ( p2m->tlb_flush ) + p2m->tlb_flush(p2m); } } =20 @@ -287,7 +288,8 @@ void p2m_unlock_and_tlb_flush(struct p2m_domain *p2m) { p2m->need_flush =3D 0; mm_write_unlock(&p2m->lock); - p2m->tlb_flush(p2m); + if ( p2m->tlb_flush ) + p2m->tlb_flush(p2m); } else mm_write_unlock(&p2m->lock); } --=20 2.51.2 -- Teddy Astie | Vates XCP-ng Developer XCP-ng & Xen Orchestra - Vates solutions web: https://vates.tech