Thread (23 messages) 23 messages, 6 authors, 2013-07-22

Re: [PATCH net-next] net: Add phys_port identifier to struct net_device and export it to sysfs

From: Ben Hutchings <hidden>
Date: 2013-06-28 17:09:18

On Fri, 2013-06-28 at 09:33 -0700, John Fastabend wrote:
[...]
quoted
quoted
Also, do you think this will be primarily useful for partitioning devices that
expose multiple physical functions? Or do you see a use case for SR-IOV with
virtual functions as well. The pyhs_port attribute provides a common
interface for both cases which is good I suppose in the VF case however the
host can already learn this. I gather from your original post here that you are
aware of all this.
John, I think it will be useful in the SRIOV scenario also when more
than one VF from two NICs are assigned to the guest. phys_port would be
helpful in choosing the correct slave interfaces when host details are
not available.

OK. But I'm not sure why you would assign two VFs from the same NIC
to a guest? This doesn't seem like a good configuration for failover
because if one VF fails it seems likely both will fail. Maybe there
are some benefits for load balancing? Or my assumption both VFs will
fail is wrong.
I believe Narendra is trying to provide hints to the guest that would
allow it to avoid such broken bonding configurations.  But it is
certainly a good question why there would be two VFs assigned in the
first place.

I could imagine passing through two VFs for the same physical port that
have been assigned to different VLANs.  But then you wouldn't want to
bond two devices that are on different VLANs, whether or not they're
using the same port!
Anyways it does seem useful in the partitioning case with multiple
physical functions.
I was thinking it could also help to support the hybrid guest networking
mode.  In this mode, the guest gets a PV (e.g. virtio_net) device and a
VF bridged to the same physical port, and the VF can be removed before
the guest is migrated (and maybe reinserted if there's a VF available on
the new host) without a major disruption to the guest.  In that case the
guest *should* bond together the two net devices that have the same
physical port ID but different drivers.  This would require the physical
port ID to be propagated through macvtap/macvlan and virtio.

Ben.

-- 
Ben Hutchings, Staff Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help