mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Yi Liu <yi.l.liu@intel.com>
To: "Tian, Kevin" <kevin.tian@intel.com>,
	Nicolin Chen <nicolinc@nvidia.com>,
	Jason Gunthorpe <jgg@nvidia.com>
Cc: "joro@8bytes.org" <joro@8bytes.org>,
	"alex.williamson@redhat.com" <alex.williamson@redhat.com>,
	"robin.murphy@arm.com" <robin.murphy@arm.com>,
	"baolu.lu@linux.intel.com" <baolu.lu@linux.intel.com>,
	"cohuck@redhat.com" <cohuck@redhat.com>,
	"eric.auger@redhat.com" <eric.auger@redhat.com>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"mjrosato@linux.ibm.com" <mjrosato@linux.ibm.com>,
	"chao.p.peng@linux.intel.com" <chao.p.peng@linux.intel.com>,
	"yi.y.sun@linux.intel.com" <yi.y.sun@linux.intel.com>,
	"peterx@redhat.com" <peterx@redhat.com>,
	"jasowang@redhat.com" <jasowang@redhat.com>,
	"shameerali.kolothum.thodi@huawei.com" 
	<shameerali.kolothum.thodi@huawei.com>,
	"lulu@redhat.com" <lulu@redhat.com>,
	"suravee.suthikulpanit@amd.com" <suravee.suthikulpanit@amd.com>,
	"iommu@lists.linux.dev" <iommu@lists.linux.dev>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-kselftest@vger.kernel.org"
	<linux-kselftest@vger.kernel.org>,
	"Duan, Zhenzhong" <zhenzhong.duan@intel.com>,
	"Martins, Joao" <joao.m.martins@oracle.com>
Subject: Re: [PATCH v4 01/17] iommu: Add hwpt_type with user_data for domain_alloc_user op
Date: Wed, 18 Oct 2023 14:12:16 +0800	[thread overview]
Message-ID: <4aca68f7-f2ea-76e8-c79c-ab4852e5cb50@intel.com> (raw)
In-Reply-To: <BN9PR11MB527671149ECD3DF3696A39988CD6A@BN9PR11MB5276.namprd11.prod.outlook.com>

On 2023/10/17 17:28, Tian, Kevin wrote:
>> From: Liu, Yi L <yi.l.liu@intel.com>
>> Sent: Tuesday, October 17, 2023 4:52 PM
>>
>> On 2023/10/17 02:17, Nicolin Chen wrote:
>>> On Mon, Oct 16, 2023 at 08:54:07AM -0300, Jason Gunthorpe wrote:
>>>> On Mon, Oct 16, 2023 at 11:28:15AM +0800, Yi Liu wrote:
>>>>> On 2023/10/14 01:56, Nicolin Chen wrote:
>>>>>> On Fri, Oct 13, 2023 at 11:04:56AM -0300, Jason Gunthorpe wrote:
>>>>>>> On Fri, Oct 13, 2023 at 12:33:13PM +0800, Yi Liu wrote:
>>>>>>>
>>>>>>>> not really. Below the users of the struct iommu_user_data in my
>> current
>>>>>>>> iommufd_nesting branch. Only the domain_alloc_user op has type as
>> there
>>>>>>>> can be multiple vendor specific alloc data types. Basically, I'm ok to
>>>>>>>> make the change you suggested, just not sure if it is good to add type
>>>>>>>> as it is only needed by one path.
>>>>>>>
>>>>>>> I don't think we should ever have an opaque data blob without a type
>>>>>>> tag..
>>>>>>
>>>>>> I can add those "missing" data types, and then a driver will be
>>>>>> responsible for sanitizing the type along with the data_len.
>>>>>>
>>>>>> I notice that the enum iommu_hwpt_data_type in the posted patch
>>>>>> is confined to the alloc_user uAPI. Perhaps we should share it
>>>>>> with invalidate too:
>>>>>
>>>>> invalidation path does not need a type field today as the data
>>>>> type is vendor specific, vendor driver should know the data type
>>>>> when calls in.
>>>>
>>>> I'm not keen on that, what if a driver needs another type in the
>>>> future?  You'd want to make the invalidation data format part of the
>>>> domain allocation?
>>>
>>> The invalidation data has hwpt_id so it's tied to a hwpt and its
>>> hwpt->domain. Would it be reasonable to have a different type of
>>> invalidation data for the same type of hwpt?
>>
>> this seems like what Jason asks. A type of hwpt can have two kinds
>> of invalidation data types. Is it really possible?
>>
> 
> e.g. vhost-iommu may want its own vendor-agnostic format from
> previous discussion...

ok. So in future, if there is vendor-agnostic format cache invalidation
data structure, then each existing hwpt types would have two cache
invalidation types. is it?

So it is required to make the invalidation data format part of the
domain allocation. Perhaps we can add it later?

Regards,
Yi Liu

-- 
Regards,
Yi Liu

  reply	other threads:[~2023-10-18  6:10 UTC|newest]

Thread overview: 106+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-21  7:51 [PATCH v4 00/17] iommufd: Add nesting infrastructure Yi Liu
2023-09-21  7:51 ` [PATCH v4 01/17] iommu: Add hwpt_type with user_data for domain_alloc_user op Yi Liu
2023-09-21 12:10   ` Baolu Lu
2023-09-21 20:58     ` Nicolin Chen
2023-09-25 13:05       ` Jason Gunthorpe
2023-09-25 18:17         ` Nicolin Chen
2023-09-25  6:22     ` Yi Liu
2023-09-25  8:01       ` Baolu Lu
2023-09-25 13:00         ` Jason Gunthorpe
2023-09-21 12:12   ` Baolu Lu
2023-09-21 16:44     ` Jason Gunthorpe
2023-09-22  9:47       ` Robin Murphy
2023-09-25  6:17         ` Yi Liu
2023-09-25 12:59           ` Jason Gunthorpe
2023-09-26  6:37         ` Tian, Kevin
2023-09-26 16:29           ` Jason Gunthorpe
2023-09-27  1:08             ` Tian, Kevin
2023-10-07  9:38               ` Yi Liu
2023-09-26  6:56   ` Tian, Kevin
2023-10-12  9:12     ` Yi Liu
2023-10-13 11:42       ` Yi Liu
2023-10-13 22:22         ` Nicolin Chen
2023-10-10 16:58   ` Jason Gunthorpe
2023-10-12  9:11     ` Yi Liu
2023-10-12 13:39       ` Jason Gunthorpe
2023-10-13  4:33         ` Yi Liu
2023-10-13 14:04           ` Jason Gunthorpe
2023-10-13 17:56             ` Nicolin Chen
2023-10-16  3:28               ` Yi Liu
2023-10-16 11:54                 ` Jason Gunthorpe
2023-10-16 18:17                   ` Nicolin Chen
2023-10-17  8:51                     ` Yi Liu
2023-10-17  9:28                       ` Tian, Kevin
2023-10-18  6:12                         ` Yi Liu [this message]
2023-10-18 16:37                     ` Jason Gunthorpe
2023-10-18 16:51                       ` Nicolin Chen
2023-10-13  0:34     ` Nicolin Chen
2023-10-13 14:03       ` Jason Gunthorpe
2023-09-21  7:51 ` [PATCH v4 02/17] iommu: Add nested domain support Yi Liu
2023-10-10 17:21   ` Jason Gunthorpe
2023-10-12  9:13     ` Yi Liu
2023-10-14  0:47       ` Nicolin Chen
2023-09-21  7:51 ` [PATCH v4 03/17] iommufd: Unite all kernel-managed members into a struct Yi Liu
2023-09-26  7:46   ` Tian, Kevin
2023-10-07 10:08   ` Yan Zhao
2023-10-09  4:13     ` Yi Liu
2023-10-09  5:13       ` Yan Zhao
2023-10-10  3:26         ` Yi Liu
2023-09-21  7:51 ` [PATCH v4 04/17] iommufd: Pass in hwpt_type/user_data to iommufd_hw_pagetable_alloc() Yi Liu
2023-09-21  7:51 ` [PATCH v4 05/17] iommufd: Separate kernel-managed HWPT alloc/destroy/abort functions Yi Liu
2023-09-26  7:57   ` Tian, Kevin
2023-10-10 18:49   ` Jason Gunthorpe
2023-10-12 19:09     ` Jason Gunthorpe
2023-10-13  7:13       ` Tian, Kevin
2023-10-13 14:05         ` Jason Gunthorpe
2023-10-16  8:26           ` Tian, Kevin
2023-10-16 12:02             ` Jason Gunthorpe
2023-09-21  7:51 ` [PATCH v4 06/17] iommufd: Add shared alloc_fn function pointer and mutex pointer Yi Liu
2023-09-21  7:51 ` [PATCH v4 07/17] iommufd: Add user-managed hw_pagetable support Yi Liu
2023-09-26  8:14   ` Tian, Kevin
2023-10-14  0:08     ` Nicolin Chen
2023-09-21  7:51 ` [PATCH v4 08/17] iommufd: Always setup MSI and anforce cc on kernel-managed domains Yi Liu
2023-09-26  8:16   ` Tian, Kevin
2023-10-14  0:44     ` Nicolin Chen
2023-10-16  8:48       ` Tian, Kevin
2023-10-16 11:57         ` Jason Gunthorpe
2023-10-17  8:52           ` Tian, Kevin
2023-10-17 15:53             ` Jason Gunthorpe
2023-10-17 19:58               ` Nicolin Chen
2023-10-18 16:51                 ` Jason Gunthorpe
2023-10-19  1:56                   ` Tian, Kevin
2023-10-19 23:53                     ` Jason Gunthorpe
2023-10-20  2:43                       ` Tian, Kevin
2023-10-20 13:55                         ` Jason Gunthorpe
2023-10-20 18:59                           ` Nicolin Chen
2023-10-21 16:38                             ` Jason Gunthorpe
2023-10-23  0:18                               ` Nicolin Chen
2023-10-23  2:53                                 ` Tian, Kevin
2023-10-23 18:42                                   ` Nicolin Chen
2023-10-23 13:59                                 ` Jason Gunthorpe
2023-10-23 18:49                                   ` Nicolin Chen
2023-10-18  2:32             ` Baolu Lu
2023-10-17  9:05           ` Tian, Kevin
2023-09-21  7:51 ` [PATCH v4 09/17] iommufd/device: Add helpers to enforce/remove device reserved regions Yi Liu
2023-10-07  7:20   ` Yan Zhao
2023-10-07  9:27     ` Nicolin Chen
2023-09-21  7:51 ` [PATCH v4 10/17] iommufd: Support IOMMU_HWPT_ALLOC allocation with user data Yi Liu
2023-10-13 15:19   ` Jason Gunthorpe
2023-10-13 20:58     ` Nicolin Chen
2023-10-14  0:07       ` Jason Gunthorpe
2023-10-14  0:51         ` Nicolin Chen
2023-10-16  7:03           ` Yi Liu
2023-10-16 11:59             ` Jason Gunthorpe
2023-10-16 18:44               ` Nicolin Chen
2023-10-17  8:55                 ` Yi Liu
2023-10-17 15:50                   ` Jason Gunthorpe
2023-10-17 19:32                     ` Nicolin Chen
2023-09-21  7:51 ` [PATCH v4 11/17] iommufd: Add IOMMU_HWPT_INVALIDATE Yi Liu
2023-09-21  7:51 ` [PATCH v4 12/17] iommufd/selftest: Rework TEST_LENGTH to test min_size explicitly Yi Liu
2023-09-21  7:51 ` [PATCH v4 13/17] iommufd/selftest: Add nested domain allocation for mock domain Yi Liu
2023-09-21  7:51 ` [PATCH v4 14/17] iommufd/selftest: Add coverage for IOMMU_HWPT_ALLOC with nested HWPTs Yi Liu
2023-09-21  7:51 ` [PATCH v4 15/17] iommufd/selftest: Add mock_domain_cache_invalidate_user support Yi Liu
2023-09-21  7:51 ` [PATCH v4 16/17] iommufd/selftest: Add IOMMU_TEST_OP_MD_CHECK_IOTLB test op Yi Liu
2023-09-21  7:51 ` [PATCH v4 17/17] iommufd/selftest: Add coverage for IOMMU_HWPT_INVALIDATE ioctl Yi Liu
2023-10-10 16:53 ` [PATCH v4 00/17] iommufd: Add nesting infrastructure Jason Gunthorpe
2023-10-12  8:45   ` Yi Liu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4aca68f7-f2ea-76e8-c79c-ab4852e5cb50@intel.com \
    --to=yi.l.liu@intel.com \
    --cc=alex.williamson@redhat.com \
    --cc=baolu.lu@linux.intel.com \
    --cc=chao.p.peng@linux.intel.com \
    --cc=cohuck@redhat.com \
    --cc=eric.auger@redhat.com \
    --cc=iommu@lists.linux.dev \
    --cc=jasowang@redhat.com \
    --cc=jgg@nvidia.com \
    --cc=joao.m.martins@oracle.com \
    --cc=joro@8bytes.org \
    --cc=kevin.tian@intel.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=lulu@redhat.com \
    --cc=mjrosato@linux.ibm.com \
    --cc=nicolinc@nvidia.com \
    --cc=peterx@redhat.com \
    --cc=robin.murphy@arm.com \
    --cc=shameerali.kolothum.thodi@huawei.com \
    --cc=suravee.suthikulpanit@amd.com \
    --cc=yi.y.sun@linux.intel.com \
    --cc=zhenzhong.duan@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®