[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1375136595.2104.13.camel@jtkirshe-mobl>
Date: Mon, 29 Jul 2013 15:23:15 -0700
From: Jeff Kirsher <jeffrey.t.kirsher@...el.com>
To: Jiri Pirko <jiri@...nulli.us>
Cc: netdev@...r.kernel.org, davem@...emloft.net,
stephen@...workplumber.org, Narendra_K@...l.com,
bhutchings@...arflare.com, john.r.fastabend@...el.com,
or.gerlitz@...il.com, jesse.brandeburg@...el.com,
bruce.w.allan@...el.com, carolyn.wyborny@...el.com,
donald.c.skidmore@...el.com, gregory.v.rose@...el.com,
peter.p.waskiewicz.jr@...el.com, alexander.h.duyck@...el.com,
john.ronciak@...el.com, tushar.n.dave@...el.com,
matthew.vick@...el.com, mitch.a.williams@...el.com,
vyasevic@...hat.com, amwang@...hat.com, johannes@...solutions.net
Subject: Re: [patch net-next v6 0/4] export device physical port id to
userspace
On Mon, 2013-07-29 at 18:16 +0200, Jiri Pirko wrote:
> This patchset is based on patch by Narendra_K@...l.com
> Once device which can change phys port id during its lifetime adopts
> this,
> NETDEV_CHANGEPHYSPORTID event will be added and driver will call
> call_netdevice_notifiers(NETDEV_NETDEV_CHANGEPHYSPORTID, dev) to
> propagate
> the change to userspace.
>
> v1->v2: as suggested by Ben, handle -EOPNOTSUPP in rtnl code (wrapped
> up ndo call)
> v2->v3: adjusted patch 1 commit message
> v3->v4: used "%phN" for sysfs printf as suggested by DaveM
> added igb/igbvf implementation as requested by Or Gerlitz
> v4->v5: used prandom_u32 to generate id in igb_probe
> removed duplicate code in ibgvf_probe
> pushed dev_err string into one line in igbvf_refresh_ppid
> v5->v6: use uuid_le_gen for generating 16-byte phys port id for
> igb/igbvf
> as suggested by BenH
>
> 1) Why do we need this, and why do existing facilities fail to provide
> a way to accomplish this?
>
> Currenty there's very hard to tell if two netdevs are using the same
> physical
> port. For sr-iov this can be get by sysfs. For other mechanisms, like
> NPAR
> there's very hard to do it (one must learn it from NIC BIOS). But even
> for
> sr-iov there's no way to say if two netdevs are using the same phys
> port when
> these are passed through to virtual guests.
>
> This patchset provides the generic way of letting this information
> know to
> userspace. This info can be used by apps like NetworkManager, teamd,
> Wicked,
> ovs daemon, etc, to do smarter bonding decisions.
>
> 2) Why is the physical port ID defined as a 32 byte opaque cookie?
> What formats and layouts need to be accomodated, and which
> influenced the design of the ID?
>
> For user to distinguish if two netdevs are using the same port, he
> only needs
> to compare their phys port ids. Nothing else is needed. This id has no
> structure for security reasons. VF should not know anything about PF.
>
> 3) Are IDs globally unique? Why or why not? If IDs should be
> globally unique, but only in certain cases, what exactly are those
> cases.
>
> Most of the time only uniqueness needed is in scope of single machine.
> There might be case when the id should be unique between couple of
> machines
> in virtualization environment. Given that for example for igb/igbvf
> 16B uuid
> is used, there is no problem for this case as well. But each driver
> can
> implement this differently focusing the hw capabilities and needs.
>
> Jiri Pirko (4):
> net: add ndo to get id of physical port of the device
> rtnl: export physical port id via RT netlink
> net: export physical port id via sysfs
> igb/igbvf: implement ndo_get_phys_port_id
As before, I have applied this patch series so that we can get some
validation done on patch 4. I do not want to hold up the patch series,
if Ben/Dave are fine with the recent changes, although I would like to
either get an ACK from Greg Rose or a thumbs up from our testers.
Thanks Jiri!
Download attachment "signature.asc" of type "application/pgp-signature" (837 bytes)
Powered by blists - more mailing lists