From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from fhigh-b3-smtp.messagingengine.com (fhigh-b3-smtp.messagingengine.com [202.12.124.154]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8679C3C8C75 for ; Tue, 12 May 2026 16:05:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=202.12.124.154 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778601915; cv=none; b=SLK4L93yp/lMPx6Ag4RliOpA1V+vAfWsBhBd8oq1koulZfm9mx3SsrNZ9Dnim5TiR5KUL2nDSi+KZ0LelFIkitwX0S5hoF4fwC9+EKj7+uFzKWRvARbnBwkfnrzyJqefRYe9Ac768VA8NV6rmQKHVhs2H1ZSa/FHp2xIbeqDkRU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778601915; c=relaxed/simple; bh=/QOuUKTuw55ZD5RqFc45cx/MZcbfEzcA2nBi5Pn6Gpg=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=CVDMRQY/A5x8WfUFtfCJQGNHoQzgh6em+2v6LiJjKWHE8r5fi/c7egoybKG4AjXYAAAV2mlpdEIHtd/Hw5Aqt64y6EZ5klKimY+dYX+YC0l3DZnLwM/qRZ8SstX8YqIm/ylB+WqSO4uIed4uRuMKDlc2Y1+q3Y5obVNFaOlFBts= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=invisiblethingslab.com; spf=pass smtp.mailfrom=invisiblethingslab.com; dkim=pass (2048-bit key) header.d=invisiblethingslab.com header.i=@invisiblethingslab.com header.b=ikhOIOPA; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=dCdrkjYg; arc=none smtp.client-ip=202.12.124.154 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=invisiblethingslab.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=invisiblethingslab.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=invisiblethingslab.com header.i=@invisiblethingslab.com header.b="ikhOIOPA"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="dCdrkjYg" Received: from phl-compute-06.internal (phl-compute-06.internal [10.202.2.46]) by mailfhigh.stl.internal (Postfix) with ESMTP id 53B667A0118; Tue, 12 May 2026 12:05:11 -0400 (EDT) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-06.internal (MEProxy); Tue, 12 May 2026 12:05:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= invisiblethingslab.com; h=cc:cc:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1778601911; x=1778688311; bh=q6u7b2PUR+mLnvMgH6P/y+fc2nesAkTPNVf1mznQplE=; b= ikhOIOPA5cxyfI8T3Tf7gtO/NFMSMXR8posp18yCqz3L2pRPGo8Fz1Sr09+oPocj EluO+TG6CJagyysD+M0MHQ1DIWlDLy4mam9D2QpRjXnNvGOVbqf/E5Y8j2xafc8L AYgOie8nWh/EWQlFjQqNxQHZngXUeSOotlyYt7xqmBRaNCgF2MHZcOwFrEmmggfV JYgOqZe0/8ItUZtkwC4OROPnosVxxbnLwF2/Qi1kB0JnEUDL6mthiOwXlGP7ttVY KijOl6nFOCYKoCzyI4FKExuNJn5I/duKjKQClHTa0flF7axliI+hm8FQu5TUT57K /t+bvpl39VD1EEc4rqMXwg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1778601911; x=1778688311; bh=q6u7b2PUR+mLnvMgH6P/y+fc2nesAkTPNVf 1mznQplE=; b=dCdrkjYgFK1MrwHQXQ+kRk2YlnXLXYZk/tKilonRUMpI0AkDEqB /GGSGu6yFePQ1XMUCYQdFoyyl1Tb9ANPLCDTPIjA8KX7fJPO8PFnONqnlzsqcjYw 4S1QyAgeoO4ZmPjzl/PaKeFyN7tybW9AUrCdW+n8iax6ETL0lkBzxNiAJRbWWW8B 4qeQUvKoJoS3Q8XqkoCvqc6GUITxyL2ee/ILvgUNBd+9ArJHth0QMFiN99xkkauH q3NltT9vhOZV1t7WmcZTxPZLhp090cxNnQSRKzI6mvJqPR+P8MW5DDKgeqAUrbUi MbF1ZNs7wcWJVohoUPx+3eikjCH7HpZUXKw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefhedrtddtgdduvddvvdefucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhepfffhvfevuffkfhggtggujgesghdtroertddtjeenucfhrhhomhepofgrrhgvkhcu ofgrrhgtiiihkhhofihskhhiqdfikphrvggtkhhiuceomhgrrhhmrghrvghksehinhhvih hsihgslhgvthhhihhnghhslhgrsgdrtghomheqnecuggftrfgrthhtvghrnheptdetvdfh kedutedvleffgeeutdektefhtefhfffhfeetgefhieegledvtddtkedtnecuvehluhhsth gvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrrhhmrghrvghksehi nhhvihhsihgslhgvthhhihhnghhslhgrsgdrtghomhdpnhgspghrtghpthhtohepuddupd hmohguvgepshhmthhpohhuthdprhgtphhtthhopehjghhrohhsshesshhushgvrdgtohhm pdhrtghpthhtoheplhhinhhugidqkhgvrhhnvghlsehvghgvrhdrkhgvrhhnvghlrdhorh hgpdhrtghpthhtohepgiekieeskhgvrhhnvghlrdhorhhgpdhrtghpthhtohepkhgvvhhi nhdrsghrohgushhkhiesrghrmhdrtghomhdprhgtphhtthhopegsohhrihhsrdhoshhtrh hovhhskhihsehorhgrtghlvgdrtghomhdprhgtphhtthhopehtghhlgieskhgvrhhnvghl rdhorhhgpdhrtghpthhtohepmhhinhhgohesrhgvughhrghtrdgtohhmpdhrtghpthhtoh epsghpsegrlhhivghnkedruggvpdhrtghpthhtohepuggrvhgvrdhhrghnshgvnheslhhi nhhugidrihhnthgvlhdrtghomh X-ME-Proxy: Feedback-ID: i1568416f:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 12 May 2026 12:05:05 -0400 (EDT) Date: Tue, 12 May 2026 18:05:01 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Juergen Gross Cc: linux-kernel@vger.kernel.org, x86@kernel.org, kevin.brodsky@arm.com, Boris Ostrovsky , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , xen-devel@lists.xenproject.org Subject: Re: [PATCH] x86/xen: Tolerate nested XEN_LAZY_MMU entering/leaving Message-ID: References: <20260508143933.493013-1-jgross@suse.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="TX6pd/gDPiw+HuTq" Content-Disposition: inline In-Reply-To: <20260508143933.493013-1-jgross@suse.com> --TX6pd/gDPiw+HuTq Content-Type: text/plain; protected-headers=v1; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Date: Tue, 12 May 2026 18:05:01 +0200 From: Marek =?utf-8?Q?Marczykowski-G=C3=B3recki?= To: Juergen Gross Cc: linux-kernel@vger.kernel.org, x86@kernel.org, kevin.brodsky@arm.com, Boris Ostrovsky , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , xen-devel@lists.xenproject.org Subject: Re: [PATCH] x86/xen: Tolerate nested XEN_LAZY_MMU entering/leaving On Fri, May 08, 2026 at 04:39:33PM +0200, Juergen Gross wrote: > With the support of nested lazy mmu sections it can happen that > arch_enter_lazy_mmu_mode() is being called twice without a call of > arch_leave_lazy_mmu_mode() in between, as the lazy_mmu_*() helpers > are not disabling preemption when checking for nested lazy mmu > sections. >=20 > This is a problem when running as a Xen PV guest, as > xen_enter_lazy_mmu() and xen_leave_lazy_mmu() don't tolerate this > case. >=20 > Fix that in xen_enter_lazy_mmu() and xen_leave_lazy_mmu() in order > not to hurt all other lazy mmu mode users. >=20 > Fixes: 291b3abed657 ("x86/xen: use lazy_mmu_state when context-switching") > Signed-off-by: Juergen Gross I have ran several test iterations with this patch (on top of 7.0.4) and it seems to fix the issue. So, Tested-by: Marek Marczykowski-G=C3=B3recki I did run some tests also with 291b3abed657 reverted (instead of this patch), and that seems to work too, but I didn't run enough of iterations to be 100% sure. Would it be helpful to that that further too? > --- > arch/x86/xen/mmu_pv.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) >=20 > diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c > index c80d0058efd1..3eee5f84f8a7 100644 > --- a/arch/x86/xen/mmu_pv.c > +++ b/arch/x86/xen/mmu_pv.c > @@ -2145,7 +2145,10 @@ static void xen_set_fixmap(unsigned idx, phys_addr= _t phys, pgprot_t prot) > =20 > static void xen_enter_lazy_mmu(void) > { > - enter_lazy(XEN_LAZY_MMU); > + preempt_disable(); > + if (xen_get_lazy_mode() !=3D XEN_LAZY_MMU) > + enter_lazy(XEN_LAZY_MMU); > + preempt_enable(); > } > =20 > static void xen_flush_lazy_mmu(void) > @@ -2182,7 +2185,8 @@ static void xen_leave_lazy_mmu(void) > { > preempt_disable(); > xen_mc_flush(); > - leave_lazy(XEN_LAZY_MMU); > + if (xen_get_lazy_mode() !=3D XEN_LAZY_NONE) > + leave_lazy(XEN_LAZY_MMU); > preempt_enable(); > } > =20 > --=20 > 2.54.0 >=20 --=20 Best Regards, Marek Marczykowski-G=C3=B3recki Invisible Things Lab --TX6pd/gDPiw+HuTq Content-Type: application/pgp-signature; name=signature.asc -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEhrpukzGPukRmQqkK24/THMrX1ywFAmoDT60ACgkQ24/THMrX 1yx4bAf/VQ75g91ht89MgBxSdIsuH3bHFEoMWP584OeaPmODQ286u3tzJYlkk6A0 N4hU2vs2cf6FGx1zFkwRrW4mCe7jsI2J0ZNinxpKEiX8Gkan1LqDWRI568/7lwHJ RoWSFmeM6fq/EmpVnRIVvTucul9r6+I5LqV3cG01RcOyV50f3zRZgIacIIgQKdU/ F0b/vQVZ9FksDmCudohF6xdOH1kFMhC/wBu+GRmE1j2rALpRZhGp9ofiLxpwtyqp 6EE45bopaGTU2EecaeSOCnmmvtP+M4BIPaRDqsdXXvh8qKFDCjuCn+0wqUWUKItr Gb8dxWXuPRtvYz/Q1el+pajOBkviBQ== =QeYe -----END PGP SIGNATURE----- --TX6pd/gDPiw+HuTq--