From: Yi Liu <yi.l.liu@intel.com>
To: Alex Williamson <alex.williamson@redhat.com>
Cc: <jgg@nvidia.com>, <kevin.tian@intel.com>, <joro@8bytes.org>,
<robin.murphy@arm.com>, <cohuck@redhat.com>,
<eric.auger@redhat.com>, <nicolinc@nvidia.com>,
<kvm@vger.kernel.org>, <mjrosato@linux.ibm.com>,
<chao.p.peng@linux.intel.com>, <yi.y.sun@linux.intel.com>,
<peterx@redhat.com>, <jasowang@redhat.com>,
<shameerali.kolothum.thodi@huawei.com>, <lulu@redhat.com>,
<suravee.suthikulpanit@amd.com>,
<intel-gvt-dev@lists.freedesktop.org>,
<intel-gfx@lists.freedesktop.org>, <linux-s390@vger.kernel.org>,
<xudong.hao@intel.com>, <yan.y.zhao@intel.com>,
<terrence.xu@intel.com>, <yanting.jiang@intel.com>,
<zhenzhong.duan@intel.com>
Subject: Re: [PATCH v4 5/9] vfio: Mark cdev usage in vfio_device
Date: Fri, 28 Apr 2023 14:42:57 +0800 [thread overview]
Message-ID: <9889de08-605e-d04c-0bb6-b075bc63eb90@intel.com> (raw)
In-Reply-To: <20230427124326.20621b3a.alex.williamson@redhat.com>
On 2023/4/28 02:43, Alex Williamson wrote:
> On Wed, 26 Apr 2023 07:54:15 -0700
> Yi Liu <yi.l.liu@intel.com> wrote:
>
>> Use it to differentiate whether to report group_id or dev_id in revised
>> VFIO_DEVICE_GET_PCI_HOT_RESET_INFO ioctl. Though it is not set at this
>> moment introducing it now allows us to get hot reset ready for cdev.
>>
>> Signed-off-by: Yi Liu <yi.l.liu@intel.com>
>> ---
>> include/linux/vfio.h | 7 +++++++
>> 1 file changed, 7 insertions(+)
>>
>> diff --git a/include/linux/vfio.h b/include/linux/vfio.h
>> index 4ee613924435..298f4ef16be7 100644
>> --- a/include/linux/vfio.h
>> +++ b/include/linux/vfio.h
>> @@ -63,6 +63,7 @@ struct vfio_device {
>> bool iommufd_attached;
>> #endif
>> bool noiommu;
>> + bool cdev_opened;
>> };
>>
>> /**
>> @@ -140,6 +141,12 @@ int vfio_iommufd_emulated_attach_ioas(struct vfio_device *vdev, u32 *pt_id);
>> ((int (*)(struct vfio_device *vdev, u32 *pt_id)) NULL)
>> #endif
>>
>> +static inline bool vfio_device_cdev_opened(struct vfio_device *device)
>> +{
>> + lockdep_assert_held(&device->dev_set->lock);
>> + return device->cdev_opened;
>> +}
>
> The lockdep test doesn't make much sense here, the method of opening
> the device can't change from an ioctl called on the device, which is
> the only path using this.
yes, it is only used by the ioctl paths so far. And this flag should be
static in other user-space trigger-able paths with device fd, like the
read/write/mmap. Do you think a comment would help to avoid abuse in other
paths or the name of it implies it should be used after a device is opened?
> If there needs to be a placeholder for
> future code, it should probably statically return false here and we can
> save adding the structure field and locking checks based on the
> semantics of how the field is actually used later. Thanks,
Thanks for this suggestion. I was also wondering how to handle it when
Eric questioned better to add cdev_opened when it is really used.[1]
[1]
https://lore.kernel.org/kvm/DS0PR11MB752914607E1DC9CFBFC2EF7AC3609@DS0PR11MB7529.namprd11.prod.outlook.com/
--
Regards,
Yi Liu
next prev parent reply other threads:[~2023-04-28 6:41 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-26 14:54 [PATCH v4 0/9] Enhance vfio PCI hot reset for vfio cdev device Yi Liu
2023-04-26 14:54 ` [PATCH v4 1/9] vfio: Determine noiommu in vfio_device registration Yi Liu
2023-04-27 6:36 ` Tian, Kevin
2023-04-27 7:05 ` Liu, Yi L
2023-04-27 18:35 ` Alex Williamson
2023-04-26 14:54 ` [PATCH v4 2/9] vfio-iommufd: Create iommufd_access for noiommu devices Yi Liu
2023-04-27 6:39 ` Tian, Kevin
2023-04-27 6:59 ` Liu, Yi L
2023-04-27 18:32 ` Alex Williamson
2023-04-28 6:21 ` Yi Liu
2023-04-28 7:00 ` Tian, Kevin
2023-04-28 7:04 ` Yi Liu
2023-04-28 12:07 ` Jason Gunthorpe
2023-04-28 16:07 ` Yi Liu
2023-05-02 18:12 ` Jason Gunthorpe
2023-05-03 9:48 ` Liu, Yi L
2023-05-03 19:42 ` Jason Gunthorpe
2023-05-08 15:46 ` Liu, Yi L
2023-04-28 16:13 ` Yi Liu
2023-05-02 18:22 ` Jason Gunthorpe
2023-05-03 9:57 ` Liu, Yi L
2023-05-03 19:41 ` Jason Gunthorpe
2023-05-03 22:49 ` Alex Williamson
2023-04-26 14:54 ` [PATCH v4 3/9] vfio/pci: Update comment around group_fd get in vfio_pci_ioctl_pci_hot_reset() Yi Liu
2023-04-26 14:54 ` [PATCH v4 4/9] vfio/pci: Move the existing hot reset logic to be a helper Yi Liu
2023-04-27 6:39 ` Tian, Kevin
2023-04-26 14:54 ` [PATCH v4 5/9] vfio: Mark cdev usage in vfio_device Yi Liu
2023-04-27 6:40 ` Tian, Kevin
2023-04-27 18:43 ` Alex Williamson
2023-04-28 6:42 ` Yi Liu [this message]
2023-04-26 14:54 ` [PATCH v4 6/9] iommufd: Reserved -1 in the iommufd xarray Yi Liu
2023-04-27 6:41 ` Tian, Kevin
2023-04-27 7:09 ` Liu, Yi L
2023-04-27 11:55 ` Jason Gunthorpe
2023-04-26 14:54 ` [PATCH v4 7/9] vfio-iommufd: Add helper to retrieve iommufd_ctx and devid for vfio_device Yi Liu
2023-04-27 6:45 ` Tian, Kevin
2023-04-27 7:15 ` Liu, Yi L
2023-04-26 14:54 ` [PATCH v4 8/9] vfio/pci: Extend VFIO_DEVICE_GET_PCI_HOT_RESET_INFO for vfio device cdev Yi Liu
2023-04-27 6:51 ` Tian, Kevin
2023-04-27 20:04 ` Alex Williamson
2023-04-27 20:15 ` Alex Williamson
2023-05-08 15:32 ` Liu, Yi L
2023-05-08 20:29 ` Alex Williamson
2023-04-26 14:54 ` [PATCH v4 9/9] vfio/pci: Allow passing zero-length fd array in VFIO_DEVICE_PCI_HOT_RESET Yi Liu
2023-04-27 6:54 ` Tian, Kevin
2023-04-27 7:02 ` Liu, Yi L
2023-04-27 21:55 ` Alex Williamson
2023-05-02 12:55 ` Liu, Yi L
2023-04-26 15:07 ` [PATCH v4 0/9] Enhance vfio PCI hot reset for vfio cdev device Liu, Yi L
2023-04-28 9:28 ` Jiang, Yanting
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=9889de08-605e-d04c-0bb6-b075bc63eb90@intel.com \
--to=yi.l.liu@intel.com \
--cc=alex.williamson@redhat.com \
--cc=chao.p.peng@linux.intel.com \
--cc=cohuck@redhat.com \
--cc=eric.auger@redhat.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-gvt-dev@lists.freedesktop.org \
--cc=jasowang@redhat.com \
--cc=jgg@nvidia.com \
--cc=joro@8bytes.org \
--cc=kevin.tian@intel.com \
--cc=kvm@vger.kernel.org \
--cc=linux-s390@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=terrence.xu@intel.com \
--cc=xudong.hao@intel.com \
--cc=yan.y.zhao@intel.com \
--cc=yanting.jiang@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox