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

Re: [PATCH v2 3/8] x86/iommu: iommu_igfx, iommu_qinval and iommu_snoop are VT-d specific


  • To: Xenia Ragiadakou <burzalodowa@xxxxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Thu, 12 Jan 2023 16:53:21 +0100
  • 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=WYGRnZFO15xxiImwSL1q2e+5C4/uRRMhXSPe4Iw7tx4=; b=OFO+C+oWiTNVtEbSI+AaKfqxGbBLx3c4HPcr+uoFip3sa35vNr4F34CWnLztBlWTxQaikt40IASw3JRbaLHOH6f3YpcP/63wsK9bEGsjxIJ4Dvmnud+exj/SucOg/0z4jYBZQJ7q42203EPnmWEkRXom5jn0l6LIZxXSVA5YJHhOV9kBBCkVYw5X0MvxmWdizYLJCZgb4jA/F7OPPa5gtuLxhMVorgMYqE0vg3wXQzXVUwNuzaBysPJ8r0SfwDDt0htAaUPWZF9E7g/DpkebFBuD8isRuIhHY4WpFcnpo5c3gDEme4gqCz5v1e1kUVXKLCc9zRxgfSAejaMJia2Pdg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X6J/AS2PLPBwUq4wq972dHYGn7+UlZP2FN85NyweM+muJ4SMqgeYxMeOW/tCH10qRn1LaFULAN8K6m8eLSr6cjWeA2+vJSYSvvzWhD8uHFPAz3yHKH3Vw06CcMD5z9Lb4nv1gLVCjL/P+6WfwVOWto/q8vwmMO3SfYsCd3TCbp2O66bLrOVpbW7iqrc1eyFb6aji9afazJb5iPpC7KCbYH5cxyG9KloKvaTOh0Doz3raQi7OsZNbVGyn+SLdkjuLXexgtHb2dcpXQ3bwHKGuo716hraXCQo7N0vvlY6vUuNSsP30IAggesolhSVw/HeN8fhIHaT/1Tfzz2o2jVqwAw==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
  • Cc: Paul Durrant <paul@xxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • Delivery-date: Thu, 12 Jan 2023 15:53:32 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 12.01.2023 16:43, Xenia Ragiadakou wrote:
> On 1/12/23 13:49, Xenia Ragiadakou wrote:
>> On 1/12/23 13:31, Jan Beulich wrote:
>>> On 04.01.2023 09:44, Xenia Ragiadakou wrote:
>>>> --- a/xen/include/xen/iommu.h
>>>> +++ b/xen/include/xen/iommu.h
>>>> @@ -74,9 +74,13 @@ extern enum __packed iommu_intremap {
>>>>      iommu_intremap_restricted,
>>>>      iommu_intremap_full,
>>>>   } iommu_intremap;
>>>> -extern bool iommu_igfx, iommu_qinval, iommu_snoop;
>>>>   #else
>>>>   # define iommu_intremap false
>>>> +#endif
>>>> +
>>>> +#ifdef CONFIG_INTEL_IOMMU
>>>> +extern bool iommu_igfx, iommu_qinval, iommu_snoop;
>>>> +#else
>>>>   # define iommu_snoop false
>>>>   #endif
>>>
>>> Do these declarations really need touching? In patch 2 you didn't move
>>> amd_iommu_perdev_intremap's either.
>>
>> Ok, I will revert this change (as I did in v2 of patch 2) since it is 
>> not needed.
> 
> Actually, my patch was altering the current behavior by defining 
> iommu_snoop as false when !INTEL_IOMMU.
> 
> IIUC, there is no control over snoop behavior when using the AMD iommu. 
> Hence, iommu_snoop should evaluate to true for AMD iommu.
> However, when using the INTEL iommu the user can disable it via the 
> "iommu" param, right?

That's the intended behavior, yes, but right now we allow the option
to also affect behavior on AMD - perhaps wrongly so, as there's one
use outside of VT-x and VT-d code. But of course the option is
documented to be there for VT-d only, so one can view it as user
error if it's used on a non-VT-d system.

> If that's the case then iommu_snoop needs to be moved from vtd/iommu.c 
> to x86/iommu.c and iommu_snoop assignment via iommu param needs to be 
> guarded by CONFIG_INTEL_IOMMU.

Or #define to true when !INTEL_IOMMU and keep the variable where it
is.

Jan



 


Rackspace

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