From: Yi Liu <yi.l.liu@intel.com>
To: "Duan, Zhenzhong" <zhenzhong.duan@intel.com>,
"joro@8bytes.org" <joro@8bytes.org>,
"alex.williamson@redhat.com" <alex.williamson@redhat.com>,
"jgg@nvidia.com" <jgg@nvidia.com>,
"Tian, Kevin" <kevin.tian@intel.com>,
"robin.murphy@arm.com" <robin.murphy@arm.com>,
"baolu.lu@linux.intel.com" <baolu.lu@linux.intel.com>
Cc: "cohuck@redhat.com" <cohuck@redhat.com>,
"eric.auger@redhat.com" <eric.auger@redhat.com>,
"nicolinc@nvidia.com" <nicolinc@nvidia.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>,
"joao.m.martins@oracle.com" <joao.m.martins@oracle.com>,
"Zeng, Xin" <xin.zeng@intel.com>,
"Zhao, Yan Y" <yan.y.zhao@intel.com>
Subject: Re: [PATCH 2/3] vfio: Add VFIO_DEVICE_PASID_[AT|DE]TACH_IOMMUFD_PT
Date: Tue, 28 Nov 2023 11:06:52 +0800 [thread overview]
Message-ID: <90c4bc5d-fd09-46ba-87af-6763a46c2276@intel.com> (raw)
In-Reply-To: <SJ0PR11MB6744B5CAC867EE643958078D92BDA@SJ0PR11MB6744.namprd11.prod.outlook.com>
On 2023/11/27 14:50, Duan, Zhenzhong wrote:
>
>
>> -----Original Message-----
>> From: Liu, Yi L <yi.l.liu@intel.com>
>> Sent: Monday, November 27, 2023 2:39 PM
>> Subject: [PATCH 2/3] vfio: Add
>> VFIO_DEVICE_PASID_[AT|DE]TACH_IOMMUFD_PT
>>
>> This adds ioctls for the userspace to attach a given pasid of a vfio
>> device to/from an IOAS/HWPT.
>>
>> Signed-off-by: Yi Liu <yi.l.liu@intel.com>
>> ---
>> drivers/vfio/device_cdev.c | 45 +++++++++++++++++++++++++++++++
>> drivers/vfio/vfio.h | 4 +++
>> drivers/vfio/vfio_main.c | 8 ++++++
>> include/uapi/linux/vfio.h | 55 ++++++++++++++++++++++++++++++++++++++
>> 4 files changed, 112 insertions(+)
>>
>> diff --git a/drivers/vfio/device_cdev.c b/drivers/vfio/device_cdev.c
>> index e75da0a70d1f..c2ac7ed44537 100644
>> --- a/drivers/vfio/device_cdev.c
>> +++ b/drivers/vfio/device_cdev.c
>> @@ -210,6 +210,51 @@ int vfio_df_ioctl_detach_pt(struct vfio_device_file *df,
>> return 0;
>> }
>>
>> +int vfio_df_ioctl_pasid_attach_pt(struct vfio_device_file *df,
>> + struct vfio_device_pasid_attach_iommufd_pt
>> __user *arg)
>> +{
>> + struct vfio_device *device = df->device;
>> + struct vfio_device_pasid_attach_iommufd_pt attach;
>> + unsigned long minsz;
>> + int ret;
>> +
>> + minsz = offsetofend(struct vfio_device_pasid_attach_iommufd_pt, pt_id);
>> +
>> + if (copy_from_user(&attach, arg, minsz))
>> + return -EFAULT;
>> +
>> + if (attach.argsz < minsz || attach.flags)
>> + return -EINVAL;
>> +
>> + mutex_lock(&device->dev_set->lock);
>> + ret = device->ops->pasid_attach_ioas(device, attach.pasid,
>> &attach.pt_id);
>> + mutex_unlock(&device->dev_set->lock);
>> +
>> + return ret;
>> +}
>> +
>> +int vfio_df_ioctl_pasid_detach_pt(struct vfio_device_file *df,
>> + struct vfio_device_pasid_detach_iommufd_pt
>> __user *arg)
>> +{
>> + struct vfio_device *device = df->device;
>> + struct vfio_device_pasid_detach_iommufd_pt detach;
>> + unsigned long minsz;
>> +
>> + minsz = offsetofend(struct vfio_device_pasid_detach_iommufd_pt, flags);
>
> Pasid isn't copied, should use pasid here?
good catch! will fix it.
--
Regards,
Yi Liu
next prev parent reply other threads:[~2023-11-28 3:04 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-27 6:39 [PATCH 0/3] vfio-pci support pasid attach/detach Yi Liu
2023-11-27 6:39 ` [PATCH 1/3] vfio-iommufd: Support pasid [at|de]tach for physical VFIO devices Yi Liu
2024-01-15 17:18 ` Jason Gunthorpe
2023-11-27 6:39 ` [PATCH 2/3] vfio: Add VFIO_DEVICE_PASID_[AT|DE]TACH_IOMMUFD_PT Yi Liu
2023-11-27 6:50 ` Duan, Zhenzhong
2023-11-28 3:06 ` Yi Liu [this message]
2023-12-11 17:05 ` Alex Williamson
2023-12-12 3:02 ` Yi Liu
2023-11-27 6:39 ` [PATCH 3/3] vfio: Report PASID capability via VFIO_DEVICE_FEATURE ioctl Yi Liu
2023-11-27 7:28 ` Duan, Zhenzhong
2023-11-28 3:11 ` Yi Liu
2023-11-28 4:23 ` Duan, Zhenzhong
2023-12-07 8:47 ` Tian, Kevin
2023-12-11 8:08 ` Yi Liu
2023-12-12 2:20 ` Tian, Kevin
2023-12-12 3:26 ` Yi Liu
2023-12-12 15:31 ` Jason Gunthorpe
2023-12-13 1:59 ` Tian, Kevin
2023-12-11 18:03 ` Alex Williamson
2023-12-11 18:10 ` Jason Gunthorpe
2023-12-11 18:49 ` Alex Williamson
2023-12-12 15:35 ` Jason Gunthorpe
2023-12-13 2:10 ` Tian, Kevin
2024-01-15 9:49 ` Yi Liu
2023-12-12 2:16 ` Tian, Kevin
2023-12-12 3:44 ` Yi Liu
2023-12-12 2:43 ` Duan, Zhenzhong
2023-12-12 3:39 ` Alex Williamson
2023-12-12 3:53 ` Yi Liu
2023-12-12 15:27 ` Jason Gunthorpe
2024-01-15 8:20 ` 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=90c4bc5d-fd09-46ba-87af-6763a46c2276@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=xin.zeng@intel.com \
--cc=yan.y.zhao@intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.