From: Jason Gunthorpe <jgg@nvidia.com>
To: Alex Williamson <alex.williamson@redhat.com>
Cc: Max Gurtovoy <mgurtovoy@nvidia.com>,
Yishai Hadas <yishaih@nvidia.com>,
bhelgaas@google.com, corbet@lwn.net, diana.craciun@oss.nxp.com,
kwankhede@nvidia.com, eric.auger@redhat.com,
masahiroy@kernel.org, michal.lkml@markovi.net,
linux-pci@vger.kernel.org, linux-doc@vger.kernel.org,
kvm@vger.kernel.org, linux-s390@vger.kernel.org,
linux-kbuild@vger.kernel.org, maorg@nvidia.com,
leonro@nvidia.com
Subject: Re: [PATCH V3 06/13] vfio/pci: Split the pci_driver code out of vfio_pci_core.c
Date: Tue, 24 Aug 2021 19:48:40 -0300 [thread overview]
Message-ID: <20210824224840.GZ1721383@nvidia.com> (raw)
In-Reply-To: <20210824154839.159a1243.alex.williamson@redhat.com>
On Tue, Aug 24, 2021 at 03:48:39PM -0600, Alex Williamson wrote:
> On Mon, 23 Aug 2021 18:28:49 +0300
> Max Gurtovoy <mgurtovoy@nvidia.com> wrote:
>
> > On 8/23/2021 6:16 PM, Alex Williamson wrote:
> > > On Sun, 22 Aug 2021 17:35:55 +0300
> > > Yishai Hadas <yishaih@nvidia.com> wrote:
> > >> diff --git a/drivers/vfio/pci/vfio_pci.c b/drivers/vfio/pci/vfio_pci.c
> > >> new file mode 100644
> > >> index 000000000000..15474ebadd98
> > >> +++ b/drivers/vfio/pci/vfio_pci.c
> > > ...
> > >> +static int vfio_pci_sriov_configure(struct pci_dev *pdev, int nr_virtfn)
> > >> +{
> > >> + might_sleep();
> > >> +
> > >> + if (!enable_sriov)
> > >> + return -ENOENT;
> > >> +
> > >> + return vfio_pci_core_sriov_configure(pdev, nr_virtfn);
> > >> +}
> > > As noted in previous version, why do we need the might_sleep() above
> > > when the core code below includes it and there's nothing above that
> > > might sleep before that? Thanks,
> >
> > This is used to mention vfio_pci_core_sriov_configure might sleep.
> >
> > If this is redundant, can you please remove this one line upon merge ?
>
> I guess I'm not sure how far up we need to, or should, percolate
> might_sleep() annotations. vfio_pci_core_sriov_configure() calls
> vfio_device_get_from_dev() which makes use of mutexes, which I think is
> the original reason for the annotation there ahead of those in the PCI
> iov code. But is the annotation through mutex_lock() enough on its own,
> ie. should we remove all of our gratuitous annotations in the vfio part
> of the code path? Thanks,
Generally you'd want to use might_sleep() on a path where the sleep is
conditional - particularly something where the conditions are rare.
Given that the mutex_lock is basically unconditional and the
!enable_sriov = false is rare, I'd suggest to delete the whole lot of
it on this path.
Jason
next prev parent reply other threads:[~2021-08-24 22:48 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-22 14:35 [PATCH V3 00/13] Introduce vfio_pci_core subsystem Yishai Hadas
2021-08-22 14:35 ` [PATCH V3 01/13] vfio/pci: Rename vfio_pci.c to vfio_pci_core.c Yishai Hadas
2021-08-22 14:35 ` [PATCH V3 02/13] vfio/pci: Rename vfio_pci_private.h to vfio_pci_core.h Yishai Hadas
2021-08-22 14:35 ` [PATCH V3 03/13] vfio/pci: Rename vfio_pci_device to vfio_pci_core_device Yishai Hadas
2021-08-22 14:35 ` [PATCH V3 04/13] vfio/pci: Rename ops functions to fit core namings Yishai Hadas
2021-08-22 14:35 ` [PATCH V3 05/13] vfio/pci: Include vfio header in vfio_pci_core.h Yishai Hadas
2021-08-22 14:35 ` [PATCH V3 06/13] vfio/pci: Split the pci_driver code out of vfio_pci_core.c Yishai Hadas
2021-08-23 15:16 ` Alex Williamson
2021-08-23 15:28 ` Max Gurtovoy
2021-08-24 21:48 ` Alex Williamson
2021-08-24 22:48 ` Jason Gunthorpe [this message]
2021-08-22 14:35 ` [PATCH V3 07/13] vfio/pci: Move igd initialization to vfio_pci.c Yishai Hadas
2021-08-22 14:35 ` [PATCH V3 08/13] vfio/pci: Move module parameters " Yishai Hadas
2021-08-22 14:35 ` [PATCH V3 09/13] PCI: Add 'override_only' field to struct pci_device_id Yishai Hadas
2021-08-22 14:35 ` [PATCH V3 10/13] PCI / VFIO: Add 'override_only' support for VFIO PCI sub system Yishai Hadas
2021-08-24 13:17 ` Max Gurtovoy
2021-08-22 14:36 ` [PATCH V3 11/13] vfio: Use select for eventfd Yishai Hadas
2021-08-22 14:36 ` [PATCH V3 12/13] vfio: Use kconfig if XX/endif blocks instead of repeating 'depends on' Yishai Hadas
2021-08-22 14:36 ` [PATCH V3 13/13] vfio/pci: Introduce vfio_pci_core.ko Yishai Hadas
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=20210824224840.GZ1721383@nvidia.com \
--to=jgg@nvidia.com \
--cc=alex.williamson@redhat.com \
--cc=bhelgaas@google.com \
--cc=corbet@lwn.net \
--cc=diana.craciun@oss.nxp.com \
--cc=eric.auger@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=kwankhede@nvidia.com \
--cc=leonro@nvidia.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=maorg@nvidia.com \
--cc=masahiroy@kernel.org \
--cc=mgurtovoy@nvidia.com \
--cc=michal.lkml@markovi.net \
--cc=yishaih@nvidia.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.