From: "Michael S. Tsirkin" <mst@redhat.com>
To: Willem de Bruijn <willemb@google.com>
Cc: Shannon Nelson <shannon.nelson@amd.com>,
"Samudrala, Sridhar" <sridhar.samudrala@intel.com>,
Emil Tantilov <emil.s.tantilov@intel.com>,
intel-wired-lan@lists.osuosl.org, simon.horman@corigine.com,
leon@kernel.org, decot@google.com, jesse.brandeburg@intel.com,
anthony.l.nguyen@intel.com, davem@davemloft.net,
edumazet@google.com, kuba@kernel.org, pabeni@redhat.com,
netdev@vger.kernel.org, "Singhai,
Anjali" <anjali.singhai@intel.com>,
"Orr, Michael" <michael.orr@intel.com>
Subject: Re: [PATCH iwl-next v4 00/15] Introduce Intel IDPF driver
Date: Mon, 22 May 2023 15:04:39 -0400 [thread overview]
Message-ID: <20230522144241-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <CA+FuTSfUvSDFZ95d8urmEcRLMU6pnb_t-7OwV-dcJPU=mAEnkg@mail.gmail.com>
On Fri, May 19, 2023 at 01:12:43PM -0400, Willem de Bruijn wrote:
> On Fri, May 19, 2023 at 12:17 PM Shannon Nelson <shannon.nelson@amd.com> wrote:
> >
> > On 5/18/23 4:26 PM, Samudrala, Sridhar wrote:
> > > On 5/18/2023 10:10 AM, Michael S. Tsirkin wrote:
> > >> On Thu, May 18, 2023 at 09:19:31AM -0700, Samudrala, Sridhar wrote:
> > >>>
> > >>>
> > >>> On 5/11/2023 11:34 PM, Michael S. Tsirkin wrote:
> > >>>> On Mon, May 08, 2023 at 12:43:11PM -0700, Emil Tantilov wrote:
> > >>>>> This patch series introduces the Intel Infrastructure Data Path
> > >>>>> Function
> > >>>>> (IDPF) driver. It is used for both physical and virtual functions.
> > >>>>> Except
> > >>>>> for some of the device operations the rest of the functionality is the
> > >>>>> same for both PF and VF. IDPF uses virtchnl version2 opcodes and
> > >>>>> structures defined in the virtchnl2 header file which helps the driver
> > >>>>> to learn the capabilities and register offsets from the device
> > >>>>> Control Plane (CP) instead of assuming the default values.
> > >>>>
> > >>>> So, is this for merge in the next cycle? Should this be an RFC rather?
> > >>>> It seems unlikely that the IDPF specification will be finalized by that
> > >>>> time - how are you going to handle any specification changes?
> > >>>
> > >>> Yes. we would like this driver to be merged in the next cycle(6.5).
> > >>> Based on the community feedback on v1 version of the driver, we
> > >>> removed all
> > >>> references to OASIS standard and at this time this is an intel vendor
> > >>> driver.
> > >>>
> > >>> Links to v1 and v2 discussion threads
> > >>> https://lore.kernel.org/netdev/20230329140404.1647925-1-pavan.kumar.linga@intel.com/
> > >>> https://lore.kernel.org/netdev/20230411011354.2619359-1-pavan.kumar.linga@intel.com/
> > >>>
> > >>> The v1->v2 change log reflects this update.
> > >>> v1 --> v2: link [1]
> > >>> * removed the OASIS reference in the commit message to make it clear
> > >>> that this is an Intel vendor specific driver
> > >>
> > >> Yes this makes sense.
> > >>
> > >>
> > >>> Any IDPF specification updates would be handled as part of the
> > >>> changes that
> > >>> would be required to make this a common standards driver.
> > >>
> > >>
> > >> So my question is, would it make sense to update Kconfig and module name
> > >> to be "ipu" or if you prefer "intel-idpf" to make it clear this is
> > >> currently an Intel vendor specific driver? And then when you make it a
> > >> common standards driver rename it to idpf? The point being to help make
> > >> sure users are not confused about whether they got a driver with
> > >> or without IDPF updates. It's not critical I guess but seems like a good
> > >> idea. WDYT?
> > >
> > > It would be more disruptive to change the name of the driver. We can
> > > update the pci device table, module description and possibly driver
> > > version when we are ready to make this a standard driver.
> > > So we would prefer not changing the driver name.
> >
> > More disruptive for who?
> >
> > I think it would be better to change the name of the one driver now
> > before a problem is created in the tree than to leave a point of
> > confusion for the rest of the drivers to contend with in the future.
>
> This discussion is premised on the idea that the drivers will
> inevitably fork, with an Intel driver and a non-backward compatible
> standardized driver.
>
> Instead, I expect that the goal is that the future standardized driver
> will iterate and support additional features. But that the existing
> hardware will continue to be supported, if perhaps with updated
> firmware.
>
> IDPF from the start uses feature negotiation over virtchannel to be
> highly configurable. A future driver might deprecate older feature
> (variants), while either still continue to support those or require
> firmware updates to match the new version.
>
> Even if the device API would break in a non-backward compatible way,
> the same driver can support both versions. Virtio is an example of
> this.
>
> If I'm wrong and for some reason two drivers would have to be
> supported, then I'm sure we can figure out a suffix or prefix to the
> standard driver that separates it from the existing one.
OK let us look at a more specific example.
The IDPF TC recently voted to bind to device
based on class/programming interface as opposed to device/vendor id.
Future driver will likely do this. Current driver only binds to intel's
device and vendor id. Assuming this happens, what bothers me is that
depending on kernel version, driver idpf.ko either does or does not bind
to idpf programming interface.
All this is quite imminent.
Yes tricks like checking module version to check what is supported is
possible, but we are beginning to already develop technical dept and
lore and we just started. Simple lsmod|grep -q idpf seems like an
easier, more robust and intuitive way than if [[ $(cat
/sys/module/idpf/version) == "2.0" ]] then echo "idpf" fi
And yes somemore might ship the existing driver
during this initial window. Then we get
lsmod|grep -q -e idpf -e intel-ipu
still seems pretty clean. And hopefully the change will happen within
a couple of months so not more than one release will have
the intel-ipu name.
Of course all this is not earth shatteringly important but still,
I'm interested in what others think.
--
MST
prev parent reply other threads:[~2023-05-22 19:04 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-08 19:43 [PATCH iwl-next v4 00/15] Introduce Intel IDPF driver Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 01/15] virtchnl: add virtchnl version 2 ops Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 02/15] idpf: add module register and probe functionality Emil Tantilov
2023-05-09 2:11 ` Yunsheng Lin
2023-05-08 19:43 ` [PATCH iwl-next v4 03/15] idpf: add controlq init and reset checks Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 04/15] idpf: add core init and interrupt request Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 05/15] idpf: add create vport and netdev configuration Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 06/15] idpf: continue expanding init task Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 07/15] idpf: configure resources for TX queues Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 08/15] idpf: configure resources for RX queues Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 09/15] idpf: initialize interrupts and enable vport Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 10/15] idpf: add splitq start_xmit Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 11/15] idpf: add TX splitq napi poll support Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 12/15] idpf: add RX " Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 13/15] idpf: add singleq start_xmit and napi poll Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 14/15] idpf: add ethtool callbacks Emil Tantilov
2023-05-08 19:43 ` [PATCH iwl-next v4 15/15] idpf: configure SRIOV and add other ndo_ops Emil Tantilov
2023-05-09 4:46 ` Bagas Sanjaya
2023-05-12 13:48 ` Tantilov, Emil S
2023-05-12 6:34 ` [PATCH iwl-next v4 00/15] Introduce Intel IDPF driver Michael S. Tsirkin
2023-05-18 16:19 ` Samudrala, Sridhar
2023-05-18 17:10 ` Michael S. Tsirkin
2023-05-18 23:26 ` Samudrala, Sridhar
2023-05-19 5:49 ` Michael S. Tsirkin
2023-05-19 17:36 ` Samudrala, Sridhar
2023-05-19 18:22 ` Andrew Lunn
2023-05-19 18:42 ` Willem de Bruijn
2023-05-21 9:21 ` Michael S. Tsirkin
2023-05-22 2:54 ` Samudrala, Sridhar
2023-05-22 20:08 ` Singhai, Anjali
2023-05-22 20:37 ` Andrew Lunn
2023-05-19 16:17 ` Shannon Nelson
2023-05-19 17:12 ` Willem de Bruijn
2023-05-22 19:04 ` Michael S. Tsirkin [this message]
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=20230522144241-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=anjali.singhai@intel.com \
--cc=anthony.l.nguyen@intel.com \
--cc=davem@davemloft.net \
--cc=decot@google.com \
--cc=edumazet@google.com \
--cc=emil.s.tantilov@intel.com \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=jesse.brandeburg@intel.com \
--cc=kuba@kernel.org \
--cc=leon@kernel.org \
--cc=michael.orr@intel.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=shannon.nelson@amd.com \
--cc=simon.horman@corigine.com \
--cc=sridhar.samudrala@intel.com \
--cc=willemb@google.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;
as well as URLs for NNTP newsgroup(s).