[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210615182245.54944509.alex.williamson@redhat.com>
Date: Tue, 15 Jun 2021 18:22:45 -0600
From: Alex Williamson <alex.williamson@...hat.com>
To: Jason Gunthorpe <jgg@...dia.com>
Cc: Max Gurtovoy <mgurtovoy@...dia.com>, cohuck@...hat.com,
kvm@...r.kernel.org, linux-kernel@...r.kernel.org,
aviadye@...dia.com, oren@...dia.com, shahafs@...dia.com,
parav@...dia.com, artemp@...dia.com, kwankhede@...dia.com,
ACurrid@...dia.com, cjia@...dia.com, yishaih@...dia.com,
kevin.tian@...el.com, hch@...radead.org, targupta@...dia.com,
shameerali.kolothum.thodi@...wei.com, liulongfang@...wei.com,
yan.y.zhao@...el.com
Subject: Re: [PATCH 09/11] PCI: add matching checks for driver_override
binding
On Tue, 15 Jun 2021 20:32:57 -0300
Jason Gunthorpe <jgg@...dia.com> wrote:
> On Tue, Jun 15, 2021 at 05:22:42PM -0600, Alex Williamson wrote:
>
> > > > b) alone is a functional, runtime difference.
> > >
> > > I would state b) differently:
> > >
> > > b) Ignore the driver-override-only match entries in the ID table.
> >
> > No, pci_match_device() returns NULL if a match is found that is marked
> > driver-override-only and a driver_override is not specified. That's
> > the same as no match at all. We don't then go on to search past that
> > match in the table, we fail to bind the driver. That's effectively an
> > anti-match when there's no driver_override on the device.
>
> anti-match isn't the intention. The deployment will have match tables
> where all entires are either flags=0 or are driver-override-only.
I'd expect pci-pf-stub to have one of each, an any-id with
override-only flag and the one device ID currently in the table with
no flag.
> I would say that mixed match tables make driver-override-only into an
> anti-match is actually a minor bug in the patch.
>
> The series isn't about adding some new anti-match scheme.
>
> > I understand that's not your intended use case, but I think this allows
> > that and justifies handling a dynamic ID the same as a static ID.
> > Adding a field to pci_device_id, which is otherwise able to be fully
> > specified via new_id, except for this field, feels like a bug. Thanks,
>
> Okay, I see what you are saying clearly now.
>
> Your example usage seems legit to me, but I really don't want to
> entangle it with this series. It is a seperate idea, it can go as a
> seperate work that uses the new flags and an updated new_id and
> related parts by someone who wants it.
>
> I hope you'll understand that having NVIDIA Mellanox persue what you
> describe above is just not going to work..
I understand that use case might hit a nerve, but I don't particularly
see why handling static and dynamic IDs consistently wrt to this new
flags field is controversial. Thanks,
Alex
Powered by blists - more mailing lists