[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] x86/svm: require VMSAVEvirt for nested virt


  • To: jbeulich@xxxxxxxx
  • From: Stephen Cheng <stephen.cheng@xxxxxxxxxx>
  • Date: Thu, 30 Jul 2026 10:37:15 +0800
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=tJgCWAtxLESc93+q4IZg34kflkg07FIREavXKChpPb8=; b=TKkXMlE/YKomgs6AhgeTuSNYYCC/dVvwARlJ91qujSgqHahmPQU+NE1/sNnl2HbGJrcF+yA8+vbnQwut2ZXI04zNPbP1Dcl9OIHxorHxPwzzMcw/OjZeet2DTHu4X5tXoNM+DDFxQl6CADHPNSvp5xwZoMt60rj47DSm+Zc6PJ0U/VvMVNeVkHGWJdmVwYhK4HDEOhnV9V5WC7RNTCG9vIyIcoFvMnW6jnAPSE5vL1fpY/ch1kLxpZIZSiOUxoKOh5f/eVp1ZZqUIqLsQyjmhcP37yYsl1E07L6RJnXDIcuLe+lAC2DxCWdlvzEM4bA05MHC2ykvSWE1bYpp4Yiq8Q==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uZMFrnR9JFzVzIgWNVBjtRs8fyUxwZqSENsDvCvjT489vBrGQllXJ+v7cMPEEi74xVfWaEoaexB6Ior2N9iPhBtCxHmIxh1CCxJq9gBcZVOmJiQoZydR1cKUpS0BB/09HJrIKDmab/goXZiNA7bgbDt58JmuMSsTOJx1GQKgUaRTUNnKH9FaLi+gcDMsNBxq5HvrsuymMw93IsZXB7lGg73B+xZ4xHTtaMPd8iWjzD4ci7NOs1KB1CXn6ZoF1urdBdNQNuVZJucgreenHLLB3Y6Ul2w7J4UYeDI2ZPT2EO8zlsjDdeB6nG5D5gMQc/sHlAueMLAb9yXUAxtTqpRVSQ==
  • Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=citrix.com header.i="@citrix.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: andrew.cooper3@xxxxxxxxxx, anthony.perard@xxxxxxxxxx, jason.andryuk@xxxxxxx, julien@xxxxxxx, michal.orzel@xxxxxxx, roger@xxxxxxxxxxxxxx, ross.lagerwall@xxxxxxxxxx, sstabellini@xxxxxxxxxx, stephen.cheng@xxxxxxxxxx, teddy.astie@xxxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Thu, 30 Jul 2026 02:37:49 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 28/07/2026 10:03, Jan Beulich wrote:
> But the functions you drop aren't needed just for older parts. They're also
> going to be needed when the insn emulator hits these insns. This still is
> in need of properly wiring up, but imo we better wouldn't delete code which
> is going to be needed later on.

Fair enough.  I've talked this over with Andrew and he makes the same
point -- the emulator needs VMLOAD/VMSAVE wired up for reasons that go
beyond older parts.  I'll drop the removal.

Worth noting for the record that the handlers become unreachable in
practice, since svm_nested_features_on_efer_update() clears the
VMLOAD/VMSAVE intercepts whenever the guest sets EFER.SVME.  They sit
dormant until the emulator work picks them up.  Keeping them or
removing them makes no behavioural difference.

Ross -- this reverses your suggestion to fold VMEXIT_VMLOAD and
VMEXIT_VMSAVE into the VMEXIT_RDPRU #UD group, as that only works if
the handlers go away.

I'll submit a v2 patch soon.
Thanks all for the review.

Stephen



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.