Subject: Re: [PATCH v4 05/23] ice: Add devlink params support

From: Jason Gunthorpe <[email-masked]>
Date: Wed, 7 Apr 2021 11:57:05 -0300

On Tue, Apr 06, 2021 at 04:01:07PM -0500, Shiraz Saleem wrote:
> Add a new generic runtime devlink parameter 'rdma_protocol'
> and use it in ice PCI driver. Configuration changes
> result in unplugging the auxiliary RDMA device and re-plugging
> it with updated values for irdma auxiiary driver to consume at
> drv.probe()
> 
> Signed-off-by: Shiraz Saleem <[email-masked]>
>  .../networking/devlink/devlink-params.rst          |  6 ++
>  Documentation/networking/devlink/ice.rst           | 13 +++
>  drivers/net/ethernet/intel/ice/ice_devlink.c       | 92 +++++++++++++++++++++-
>  drivers/net/ethernet/intel/ice/ice_devlink.h       |  5 ++
>  drivers/net/ethernet/intel/ice/ice_main.c          |  2 +
>  include/net/devlink.h                              |  4 +
>  net/core/devlink.c                                 |  5 ++
>  7 files changed, 125 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/networking/devlink/devlink-params.rst b/Documentation/networking/devlink/devlink-params.rst
> index 54c9f10..0b454c3 100644
> +++ b/Documentation/networking/devlink/devlink-params.rst
> @@ -114,3 +114,9 @@ own name.
>         will NACK any attempt of other host to reset the device. This parameter
>         is useful for setups where a device is shared by different hosts, such
>         as multi-host setup.
> +   * - ``rdma_protocol``
> +     - string
> +     - Selects the RDMA protocol selected for multi-protocol devices.
> +        - ``iwarp`` iWARP
> +	- ``roce`` RoCE
> +	- ``ib`` Infiniband

I'm still not sure this belongs in devlink. 

What about devices that support roce and iwarp concurrently?

There is nothing at the protocol level that precludes this - doesn't
this device allow it?

I know Parav is looking at the general problem of how to customize
what aux devices are created, that may be a better fit for this.

Can you remove the devlink parts to make progress?

Jason