Re: [PATCH net-next v9 2/4] net: Introduce generic failover module

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 4/28/2018 1:15 AM, Jiri Pirko wrote:
Fri, Apr 27, 2018 at 07:06:58PM CEST, sridhar.samudrala@xxxxxxxxx wrote:
This provides a generic interface for paravirtual drivers to listen
for netdev register/unregister/link change events from pci ethernet
devices with the same MAC and takeover their datapath. The notifier and
event handling code is based on the existing netvsc implementation.

It exposes 2 sets of interfaces to the paravirtual drivers.
1. For paravirtual drivers like virtio_net that use 3 netdev model, the
  the failover module provides interfaces to create/destroy additional
  master netdev and all the slave events are managed internally.
       net_failover_create()
       net_failover_destroy()
  A failover netdev is created that acts a master device and controls 2
  slave devices. The original virtio_net netdev is registered as 'standby'
  netdev and a passthru/vf device with the same MAC gets registered as
  'primary' netdev. Both 'standby' and 'primary' netdevs are associated
  with the same 'pci' device.  The user accesses the network interface via
'standby' and 'primary' netdevs are not associated with the same 'pci'
device.
"Primary" is the VF netdevice and "standby" is virtio_net. Each
associated with different pci device.

I meant to say that 'standby' and 'failover' netdevs are associated with
the same 'pci' device. will fix it in v10.


  'failover' netdev. The 'failover' netdev chooses 'primary' netdev as
  default for transmits when it is available with link up and running.
2. For existing netvsc driver that uses 2 netdev model, no master netdev
  is created. The paravirtual driver registers each instance of netvsc
  as a 'failover' netdev  along with a set of ops to manage the slave
  events. There is no 'standby' netdev in this model. A passthru/vf device
  with the same MAC gets registered as 'primary' netdev.
       net_failover_register()
       net_failover_unregister()
[...]

_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux