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

Re: [PATCH v2 0/3] hvm: add hvm_funcs hooks for msr intercept handling


  • To: Xenia Ragiadakou <xenia.ragiadakou@xxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Mon, 19 Jun 2023 14:45:03 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=/YBdnd0lsiqXYrrMs5g6OE/u4YNc6fy+QrzJl2Zmp34=; b=ko44cFBvd5EWgzAoujkxX71ZmV71LINSx/jCFL/sfC6NtmRj23OOS/CcxQ36P0ohF3g++BT0GC6f3DmgqvEHXYXv5Wf2cgj04wWfApoTS9jlS1XGk6kog6ggKFusOA4wGqcyYP79HCg2vLb99mGlW/CrfKquGySuW3XlLu6T3rgE2qRpcbMrb1uVOubiUDpvbw/TXhwH0m7rFxD4zC5aIulTGFpvpZxDP8IXb/Gfrq76culCkhWWpFh2qdKJ0MAFvpuefBUBbz+pFkByTBtaEha+Y8USpc11SoN3ZVaubRsz7XReKF5KDxERgaLhN0iRyDwZq4suBOmlrWcSQ7/HZQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NViPQjfKItfodKlB1cSw31LXjMYwqYzY7NZNIHW/EaPelyJuNhn+nRwTZRHBEZ8tjTHkFD3JGeKLumLDQ7HIaWl6xoSg1PFwnYwpXOLZKXGsGQXeb2ssO0Hyq4JcIR1dyhDM3lmz+6AVfnZGM2jEUJbCfZMI8hquEcy0hw3i/DMlrKVZaZt9xrwKCMHRhfVmeXXv4q5Q10mxc6/atVMT1gJlo7H7HH7lVwvMmgg6MK3ASv700XZgwzdG6Y61PyR3kSnIlmvpL6D88pD6fCSiGt67VbMBKO3w8uNz9cSD+H2g6mcec/GbXHpnCrM01AcHfPDTzbbbdbHpP0DN/bSWEA==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
  • Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Jun Nakajima <jun.nakajima@xxxxxxxxx>, Kevin Tian <kevin.tian@xxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Mon, 19 Jun 2023 12:45:16 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 24.04.2023 10:20, Xenia Ragiadakou wrote:
> This patch series aims to make the msr intercept handling, performed in
> vpmu code, virtualization technology agnostic.
> It creates a common interface for setting/clearing the msr intercepts and
> then add hooks to the corresponding hvm_funcs table to be able to call the
> svm/vmx specific handlers through a generic hvm wrapper function.
> 
> Version 2 addresses the comments made on version 1 to ease further review.
> 
> Still there is a pending question made by Jan, whether there could be other,
> than the vpmu one, use cases that would require msr intercept handling to be
> performed outside of virtualization techonology-specific code, and whether
> this abstraction is actually usefull to have.
> 
> Xenia Ragiadakou (3):
>   x86/svm: split svm_intercept_msr() into
>     svm_{set,clear}_msr_intercept()
>   x86/vmx: replace enum vmx_msr_intercept_type with the msr access flags
>   x86/hvm: create hvm_funcs for {svm,vmx}_{set,clear}_msr_intercept()

Coming back to this after discussing among the maintainers; I'm sorry that
it has taken a while. For what the 1st patch does we think we might be more
open to a conversion of VMX code in the direction of how SVM presently does
things. Andrew points out, however, that he's suspecting there may be a
wrinkle with introspection, which likely we'd need to work out collectively.

As far as the introduction of new hooks (or maybe then only one new hook)
goes, are you having further plans of using those hooks, beyond (iirc)
possibly using them in vPMU code (where I continue to think hooks aren't
really suitable, as per-vendor code is already separated)? According to
what you wrote above it doesn't sound like you do.

Jan



 


Rackspace

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