-
Notifications
You must be signed in to change notification settings - Fork 115
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Start post-network-service after sriov-config #845
Conversation
Thanks for your PR,
To skip the vendors CIs, Maintainers can use one of:
|
Pull Request Test Coverage Report for Build 13370487627Details
💛 - Coveralls |
sriov-config-post-network-service sould be executed after sriov-config. Signed-off-by: Ivan Kolodiazhnyi <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice catch! no idea why it didnt fail until now 😟
maybe it's related to kernel changes and/or system performance |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not against adding an explicit dependency between the services, but the logic should work without it on systems with NetworkManager or systemd-networkd if everything is working as was designed.
How it should work on a system with NetworkManager:
-
sriov-config.service has type=oneshot and Before=NetworkManager.service – meaning the network manager should start after the sriov-config.service process completes
-
sriov-config-post-network.service has After=NetworkManager-wait-online.service
-
NetworkManager-wait-online.service depends on NetworkManager.service.
So, the order should be sriov-config.service > NetworkManager > sriov-config-post-network.service.
For systems with systemd-networkd the logic is the same, but networkd services are used as dependencies.
The explicit dependency should be needed only in case if NetworkManager, system-networkd and ovs are not available on the system.
If the explicit dependency is really needed that probably means that the dependency chain doesn’t work as expected and “with bond scenarios” will not work.
Bond scenario:
- sriov-config.service configure NIC mode and create VFs, unbind VFs from the driver at the end of execution
- NetworkManager configures PFs to assemble a bond
- sriov-config-post-network.service bind VFs to the driver
@e0ne Do you have a full understanding why explicit dependency is needed?
sriov-config-post-network-service sould be executed after sriov-config.