Subject: Re: [iwl-next v4 5/8] ice: allocate devlink for subfunction

From: Michal Swiatkowski <[email-masked]>
Date: Thu, 18 Apr 2024 18:11:38 +0200

On Thu, Apr 18, 2024 at 05:43:25PM +0200, Jiri Pirko wrote:
> Thu, Apr 18, 2024 at 04:46:23PM CEST, [email-masked] wrote:
> >On Thu, Apr 18, 2024 at 03:02:49PM +0200, Jiri Pirko wrote:
> >> Thu, Apr 18, 2024 at 02:48:53PM CEST, [email-masked] wrote:
> >> >On Thu, Apr 18, 2024 at 02:04:21PM +0200, Jiri Pirko wrote:
> >> >> Wed, Apr 17, 2024 at 04:20:25PM CEST, [email-masked] wrote:
> >> >> >From: Piotr Raczynski <[email-masked]>
> >> >> 
> >> >> [...]
> >> >> 
> >> >> >+/**
> >> >> >+ * ice_allocate_sf - Allocate devlink and return SF structure pointer
> >> >> >+ * @dev: the device to allocate for
> >> >> >+ *
> >> >> >+ * Allocate a devlink instance for SF.
> >> >> >+ *
> >> >> >+ * Return: void pointer to allocated memory
> >> >> >+ */
> >> >> >+struct ice_sf_priv *ice_allocate_sf(struct device *dev)
> >> >> 
> >> >> This is devlink instance for SF auxdev. Please make sure it is properly
> >> >> linked with the devlink port instance using devl_port_fn_devlink_set()
> >> >> See mlx5 implementation for inspiration.
> >> >> 
> >> >> 
> >> >
> >> >I am going to do it in the last patchset. I know that it isn't the best
> >> 
> >> Where? Either I'm blind or you don't do it.
> >> 
> >> 
> >
> >You told me to split few patches from first patchset [1]. We agree that
> >there will be too many patches for one submission, so I split it into
> >3:
> >- 1/3 devlink prework (already accepted)
> >- 2/3 base subfunction (this patchset)
> >- 3/3 port representor refactor to support subfunction (I am going to
> >  include it there)
> 
> Sorry, but how is this relevant to my suggestion to use
> devl_port_fn_devlink_set() which you apparently don't?
> 

Devlink port to link with is introduced in the port representor part.
Strange, but it fitted to my splitting. I can move
activation/deactivation part also to this patchset (as there is no
devlink port to call it on) if you want.

> 
> >
> >[1] https://lore.kernel.org/netdev/[email-masked]/
> >
> >Thanks,
> >Michal
> >
> >> >option to split patchesets like that, but it was hard to do it differently.
> >> >
> >> >Thanks,
> >> >Michal
> >> >
> >> >> >+{
> >> >> >+	return ice_devlink_alloc(dev, sizeof(struct ice_sf_priv),
> >> >> >+				 &ice_sf_devlink_ops);
> >> >> >+}
> >> >> >+
> >> >> 
> >> >> [...]