RE: [EXTERNAL] Re: [PATCH] hv_netvsc: Set device flags for properly indicating bonding

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

 



> Subject: [EXTERNAL] Re: [PATCH] hv_netvsc: Set device flags for properly
> indicating bonding
> 
> On Wed, 27 Nov 2024 11:42:50 -0800
> longli@xxxxxxxxxxxxxxxxx wrote:
> 
> > hv_netvsc uses a subset of bonding features in that the master always
> > has only one active slave. But it never properly setup those flags.
> >
> > Other kernel APIs (e.g those in "include/linux/netdevice.h") check for
> > IFF_MASTER, IFF_SLAVE and IFF_BONDING for determing if those are used
> > in a master/slave setup. RDMA uses those APIs extensively when looking
> > for master/slave devices.
> >
> > Make hv_netvsc properly setup those flags.
> >
> > Signed-off-by: Long Li <longli@xxxxxxxxxxxxx>
> 
> Linux networking has evolved a patch work of flags to network devices but never
> really standardized on a way to express linked relationships between network
> devices. There are several drivers do this in slighlty different and overlapping
> ways: bonding, team, failover, hyperv, bridge and others.
> 
> The current convention is to mark the primary device as IFF_MASTER and each
> secondary device with IFF_SLAVE.  But not clear what the right combination is if
> stacked more than one level.  Also, not clear if userspace and other addressing
> should use or not use nested devices.
> 
> It would be ideal to deprecate and use different terms than the non-inclusive
> terms master/slave but probably that would have to have been done years ago
> (like 2.5).
> 
> For now, it makes sense for all the nested devices to use IFF_MASTER and
> IFF_SLAVE consistently. It is not a good idea to set the priv_flag for IFF_BONDING
> (or any of the other bits) which should be reserved for one driver.
> 
> If hyperv driver needs to it could add its own flag in netdev_priv_flags, but it looks
> like that is running out of bits. May need to grow to 64 bits or do some more work
> to add a new field for device type. I.e. there are combinations of flags that are
> impossible and having one bit per type leads to a problem. Fixing that is non trivial
> but not impossible level of effort.
> 
> My thoughts, but I don't use or work on Hyper-v anymore.

Thank you. I have sent v2.

Long





[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux