There have been some discussions on this new PMD and it will be
discussed today in the techboard meeting.

I would like to expose my view and summarize the solutions I have heard.
First it is important to remind that everyone agrees on the need for
this feature, i.e. masking the hotplug events by maintaining an ethdev
object even without real underlying device.

1/ 
The proposal from Gaetan is to add a failsafe driver with 2 features:
        * masking underlying device
        * limited and small failover code to switch from a device
          to another one, with the same centralized configuration
The latter feature makes think to the bonding driver, but it could be
kept limited without any intent of implementing real bonding features.

2/ 
If we really want to merge failsafe and bonding features, we could
create a new bonding driver with centralized configuration.
The legacy bonding driver let each slave to be configured separately.
It is a different model and we should not mix them.
If one is better, it could be deprecated later.

3/
It can be tried to implement the failsafe feature into the bonding
driver, as Neil suggests.
However, I am not sure it would work very well or would be easy to use.

4/
We can implement only the failsafe feature as a PMD and use it to wrap
the slaves of the bonding driver.
So the order of link would be 
        bonding -> failsafe -> real device
In this model, failsafe can have only one slave and do not implement
the fail-over feature.

Reply via email to