[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190321084526.GA2087@nanopsycho>
Date: Thu, 21 Mar 2019 09:45:26 +0100
From: Jiri Pirko <jiri@...nulli.us>
To: Jakub Kicinski <jakub.kicinski@...ronome.com>
Cc: Parav Pandit <parav@...lanox.com>,
"Samudrala, Sridhar" <sridhar.samudrala@...el.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"oss-drivers@...ronome.com" <oss-drivers@...ronome.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.kicinski@...ronome.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.
So as you suggest, we would have
devlink_port -+-- switch netdev/ibdev
|
+-- host netdev/ibdev
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...
Powered by blists - more mailing lists