netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: David Ahern <dsahern@gmail.com>
To: Jakub Kicinski <jakub.kicinski@netronome.com>
Cc: Jiri Pirko <jiri@resnulli.us>,
	netdev@vger.kernel.org, davem@davemloft.net,
	sthemmin@microsoft.com, mlxsw@mellanox.com
Subject: Re: [patch net-next 0/3] net: devlink: Finish network namespace support
Date: Wed, 31 Jul 2019 16:31:52 -0600	[thread overview]
Message-ID: <de94a881-cb87-e251-d55c-9f40d24b08d5@gmail.com> (raw)
In-Reply-To: <20190731152805.4110ec41@cakuba.netronome.com>

On 7/31/19 4:28 PM, Jakub Kicinski wrote:
> On Wed, 31 Jul 2019 16:07:31 -0600, David Ahern wrote:
>> On 7/31/19 4:02 PM, Jakub Kicinski wrote:
>>> Can you elaborate further? Ports for most purposes are represented by
>>> netdevices. Devlink port instances expose global topological view of
>>> the ports which is primarily relevant if you can see the entire ASIC.
>>> I think the global configuration and global view of resources is still
>>> the most relevant need, so in your diagram you must account for some
>>> "all-seeing" instance, e.g.:
>>>
>>>    namespace 1 |  namespace 2  | ... | namespace N
>>>                |               |     |
>>>   { ports 1 }  |   { ports 2 } | ... | { ports N }
>>>                |               |     |
>>> subdevlink 1   | subdevlink 2  | ... |  subdevlink N
>>>          \______      |              _______/
>>>                  master ASIC devlink
>>>   =================================================
>>>                    driver
>>>
>>> No?
>>
>> sure, there could be a master devlink visible to the user if that makes
>> sense or the driver can account for it behind the scenes as the sum of
>> the devlink instances.
>>
>> The goal is to allow ports within an asic [1] to be divided across
>> network namespace where each namespace sees a subset of the ports. This
>> allows creating multiple logical switches from a single physical asic.
>>
>> [1] within constraints imposed by the driver/hardware - for example to
>> account for resources shared by a set of ports. e.g., front panel ports
>> 1 - 4 have shared resources and must always be in the same devlink instance.
> 
> So the ASIC would start out all partitioned? Presumably some would
> still like to use it non-partitioned? What follows there must be a top
> level instance to decide on partitioning, and moving resources between
> sub-instances.
> 
> Right now I don't think there is much info in devlink ports which would
> be relevant without full view of the ASIC..
> 

not sure how it would play out. really just 'thinking out loud' about
the above use case to make sure devlink with proper namespace support
allows it - or does not prevent it.

  reply	other threads:[~2019-07-31 22:31 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-27  9:44 [patch net-next 0/3] net: devlink: Finish network namespace support Jiri Pirko
2019-07-27  9:44 ` [patch net-next 1/3] net: devlink: allow to change namespaces Jiri Pirko
2019-07-29 17:52   ` David Miller
2019-07-30  6:05     ` Jiri Pirko
2019-07-27  9:44 ` [patch net-next 2/3] net: devlink: export devlink net set/get helpers Jiri Pirko
2019-07-27  9:44 ` [patch net-next 3/3] netdevsim: create devlink and netdev instances in namespace Jiri Pirko
2019-07-29 18:59   ` Jakub Kicinski
2019-07-30  6:06     ` Jiri Pirko
2019-07-30 17:14       ` Jakub Kicinski
2019-07-30 21:03         ` Jiri Pirko
2019-07-27 10:05 ` [patch iproute2 1/2] devlink: introduce cmdline option to switch to a different namespace Jiri Pirko
2019-07-27 10:12   ` Toke Høiland-Jørgensen
2019-07-27 10:21     ` Jiri Pirko
2019-07-27 10:25       ` Toke Høiland-Jørgensen
2019-07-29 20:21       ` David Ahern
2019-07-30  6:07         ` Jiri Pirko
2019-07-29 20:17   ` David Ahern
2019-07-27 10:05 ` [patch iproute2 2/2] devlink: add support for network namespace change Jiri Pirko
2019-07-29 20:17 ` [patch net-next 0/3] net: devlink: Finish network namespace support David Ahern
2019-07-30  6:08   ` Jiri Pirko
2019-07-31 21:50     ` David Ahern
2019-07-31 22:02       ` Jakub Kicinski
2019-07-31 22:07         ` David Ahern
2019-07-31 22:28           ` Jakub Kicinski
2019-07-31 22:31             ` David Ahern [this message]
2019-08-02  7:42               ` Jiri Pirko

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=de94a881-cb87-e251-d55c-9f40d24b08d5@gmail.com \
    --to=dsahern@gmail.com \
    --cc=davem@davemloft.net \
    --cc=jakub.kicinski@netronome.com \
    --cc=jiri@resnulli.us \
    --cc=mlxsw@mellanox.com \
    --cc=netdev@vger.kernel.org \
    --cc=sthemmin@microsoft.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).