Kernel KVM virtualization development
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas@kernel.org>
To: Yishai Hadas <yishaih@nvidia.com>
Cc: bhelgaas@google.com, corbet@lwn.net, alex.williamson@redhat.com,
	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,
	mgurtovoy@nvidia.com, jgg@nvidia.com, maorg@nvidia.com,
	leonro@nvidia.com
Subject: Re: [PATCH V2 09/12] PCI: Add 'override_only' bitmap to struct pci_device_id
Date: Thu, 19 Aug 2021 11:39:45 -0500	[thread overview]
Message-ID: <20210819163945.GA3211852@bjorn-Precision-5520> (raw)
In-Reply-To: <41539eec-b6fc-084b-0417-ac39d324189e@nvidia.com>

On Thu, Aug 19, 2021 at 07:16:20PM +0300, Yishai Hadas wrote:
> On 8/19/2021 6:15 PM, Bjorn Helgaas wrote:
> > On Wed, Aug 18, 2021 at 06:16:03PM +0300, Yishai Hadas wrote:
> > > From: Max Gurtovoy <mgurtovoy@nvidia.com>

> > >   /**
> > >    * struct pci_device_id - PCI device ID structure
> > >    * @vendor:		Vendor ID to match (or PCI_ANY_ID)
> > > @@ -34,12 +38,14 @@ typedef unsigned long kernel_ulong_t;
> > >    *			Best practice is to use driver_data as an index
> > >    *			into a static list of equivalent device types,
> > >    *			instead of using it as a pointer.
> > > + * @override_only:	Bitmap for override_only PCI drivers.
> > "Match only when dev->driver_override is this driver"?
> 
> Just to be aligned here,
> 
> This field will stay __u32 and may hold at the most 1 bit value set to
> represent the actual subsystem/driver.

The PCI core does not require "at most 1 bit is set."

Actually, I don't think even the file2alias code requires that.  If
you set two bits, you can generate two aliases.

> This is required to later on set the correct prefix in the modules.alias
> file, and you just suggested to change the comment as of above, right ?

Yes, __u32 is fine and I'm only suggesting a comment change here.

> > As far as PCI core is concerned there's no need for this to be a
> > bitmap.
> > 
> > I think this would make more sense if split into two patches.  The
> > first would add override_only and change pci_match_device().  Then
> > there's no confusion about whether this is specific to VFIO.
> 
> Splitting may end-up the first patch with a dead-code on below, as
> found_id->override_only will be always 0.
> 
> If you still believe that this is better we can do it.

I think it's fine to add the functionality in one patch and use it in
the next if it makes the commit clearer.  I wouldn't want to add
functionality that's not used at all in the series, but it's OK when
they're both posted together.

> if (found_id->override_only) {
>     if (dev->driver_override)
>       return found_id;
>   } else
>     return found_id;
> 
> > The second can add PCI_ID_F_VFIO_DRIVER_OVERRIDE and make the
> > file2alias.c changes.  Most of the commit log applies to this part.

  reply	other threads:[~2021-08-19 16:39 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-18 15:15 [PATCH V2 00/12] Introduce vfio_pci_core subsystem Yishai Hadas
2021-08-18 15:15 ` [PATCH V2 01/12] vfio/pci: Rename vfio_pci.c to vfio_pci_core.c Yishai Hadas
2021-08-18 15:15 ` [PATCH V2 02/12] vfio/pci: Rename vfio_pci_private.h to vfio_pci_core.h Yishai Hadas
2021-08-18 15:15 ` [PATCH V2 03/12] vfio/pci: Rename vfio_pci_device to vfio_pci_core_device Yishai Hadas
2021-08-18 15:15 ` [PATCH V2 04/12] vfio/pci: Rename ops functions to fit core namings Yishai Hadas
2021-08-18 15:15 ` [PATCH V2 05/12] vfio/pci: Include vfio header in vfio_pci_core.h Yishai Hadas
2021-08-18 15:16 ` [PATCH V2 06/12] vfio/pci: Split the pci_driver code out of vfio_pci_core.c Yishai Hadas
2021-08-19 21:12   ` Alex Williamson
2021-08-19 21:38     ` Alex Williamson
2021-08-19 22:36     ` Jason Gunthorpe
2021-08-18 15:16 ` [PATCH V2 07/12] vfio/pci: Move igd initialization to vfio_pci.c Yishai Hadas
2021-08-18 15:16 ` [PATCH V2 08/12] vfio/pci: Move module parameters " Yishai Hadas
2021-08-18 15:16 ` [PATCH V2 09/12] PCI: Add 'override_only' bitmap to struct pci_device_id Yishai Hadas
2021-08-19 15:15   ` Bjorn Helgaas
2021-08-19 16:16     ` Yishai Hadas
2021-08-19 16:39       ` Bjorn Helgaas [this message]
2021-08-19 19:57         ` Max Gurtovoy
2021-08-19 22:19           ` Alex Williamson
2021-08-18 15:16 ` [PATCH V2 10/12] vfio: Use select for eventfd Yishai Hadas
2021-08-18 15:16 ` [PATCH V2 11/12] vfio: Use kconfig if XX/endif blocks instead of repeating 'depends on' Yishai Hadas
2021-08-18 15:16 ` [PATCH V2 12/12] 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=20210819163945.GA3211852@bjorn-Precision-5520 \
    --to=helgaas@kernel.org \
    --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=jgg@nvidia.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox