Thu, Mar 21, 2019 at 04:14:53PM CET, pa...@mellanox.com wrote: > > >> -----Original Message----- >> From: Jiri Pirko <j...@resnulli.us> >> Sent: Thursday, March 21, 2019 3:45 AM >> To: Jakub Kicinski <jakub.kicin...@netronome.com> >> Cc: Parav Pandit <pa...@mellanox.com>; Samudrala, Sridhar >> <sridhar.samudr...@intel.com>; da...@davemloft.net; >> netdev@vger.kernel.org; oss-driv...@netronome.com >> Subject: Re: [PATCH net-next v2 4/7] devlink: allow subports on devlink PCI >> ports >> >> Mon, Mar 18, 2019 at 08:16:42PM CET, jakub.kicin...@netronome.com >> wrote: >> >On Mon, 18 Mar 2019 13:11:54 +0100, Jiri Pirko wrote: >> >> >> >2. flavour should not be vf/pf, flavour should be hostport, >> >> >> >switchport. >> >> >> >Because switch is flat and agnostic of pf/vf/mdev. >> >> >> >> >> >> Not sure. It's good to have this kind of visibility. >> >> > >> >> >Yes, this subthread honestly makes me go from 60% sure to 95% sure >> >> >we shouldn't do the dual object thing :( Seems like Parav is >> >> >already confused by it and suggests host port can exist without >> >> >switch port :( >> >> >> >> Although I understand your hesitation, the host ports are also >> >> associated with the asic and should be under the devlink instance. >> >> It is just a matter of proper documentation and clear code to avoid >> >> confusions. >> > >> >They are certainly a part and belong to the ASIC, the question in my >> >mind is more along the lines of do we want "one pipe/one port" or is it >> >okay to have multiple software objects of the same kind for those >> >objects. >> > >> >To put it differently - do want a port object for each port of the ASIC >> >or do we want a port object for each netdev.. >> >> Perhaps "port" name of the object is misleading. From the beginning, I ment >> to have it for both switch ports and host ports. I admit that "host port" is >> a >> bit misleading, as it is not really a port of eswitch, but the counter part. >> But >> if we introduce another object for that purpose in devlink (like >> "partititon"), >> it would be a lot of duplication I think. >> >> Question is, do we need the "host port"? Can't we just put a relation to host >> netdev in the eswitch port. >> >Can you please explain how does it work for rdma for non sriov use case? >Do we have to create a fake eswitch object?
Could you please provide details on "rdma for non sriov use case"? > >> So as you suggest, we would have >> devlink_port -+-- switch netdev/ibdev >> | >> +-- host netdev/ibdev >> > >How does this work for rdma to program single node_guid for dual port ibdev? >Did you actually read the recent example I showed in [1]? >[1] https://marc.info/?l=linux-netdev&m=155312521817191&w=2 >And why it doesn't address all the use cases of pf/vf/mdev, ibdev, netdev? > >> So the "weights" of both switch/host netdev/ibdev to devlink_port relations >> would be equivalent. >> >> Then, the devlink_port would represent the whole "pipe" with both ends. >> >> More I think about it, the more it makes sense to me...