Bug 2116633

Summary: os-net-config should not restart interfaces when ETHTOOL_OPTS is changed
Product: Red Hat OpenStack Reporter: Keigo Noha <knoha>
Component: os-net-configAssignee: Karthik Sundaravel <ksundara>
Status: POST --- QA Contact: Nobody <nobody>
Severity: medium Docs Contact:
Priority: medium    
Version: 16.1 (Train)CC: astupnik, bfournie, cfontain, hakhande, hbrock, jslagle, ksundara, mburns
Target Milestone: zstreamKeywords: RFE, Triaged
Target Release: 16.2 (Train on RHEL 8.4)   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 2118206 (view as bug list) Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2118206    

Description Keigo Noha 2022-08-09 06:03:34 UTC
Description of problem:
While ethtool_opts are added or modified, os-net-config down affected interfaces.
However, ethtool command doesn't require to restart the interface to apply the change.

So, os-net-config should not restart interfaces which have a change of ethtool_opts and apply the change with ethtool command online. 

Version-Release number of selected component (if applicable):
os-net-config-11.3.2-1.20210406083710.f49ab16.el8ost.noarch

How reproducible:
Everytime to apply the change of ethtool_opts.

Steps to Reproduce:
1. Setup network interface with os-net-config
2. Add or modify ethtool_opts in config.json
3. Run os-net-config.

Actual results:
Affected interfaces are restarted.

Expected results:
Affected interfaces are not restarted and apply the change by ethtool online.


Additional info:

Comment 1 Karthik Sundaravel 2022-08-10 08:16:49 UTC
os-net-config generates the ifcfg files based on config.json. If there is a change in the current ifcfg vs new one, it performs ifdown and ifup for the same. Since the issue is not reproducible with network-scripts can you please help us with more clarity on why the routes are not added back. 

Also if the change in ethtool_opts needs to be handled without restarting the interface it would be a RFE.

Comment 2 Keigo Noha 2022-08-10 08:26:27 UTC
Hi Karthik,

Currently, we're working with SBR-Networking team for the issue that routes are not back.
On the other hand, changing or adding ETHTOOL_OPTS can be applied online. So, the current implementation has a room to improve.

Once I get a result from the investigation from networking side, I'll update this case.

Best Regards,
Keigo Noha

Comment 3 Keigo Noha 2022-08-15 00:29:20 UTC
Hi Karthik,

I can reproduce the issue manually.

The key thing is what interface runs ifdown/ifup.

The proper down step is

# ifdown eth0
# ifdown eth1
# ifdown bond0
# ifup eth0
# ifup eth1
# ifup bond0

This correct steps doesn't trigger the issue.

However, os-net-config did the following steps.

# ifdown eth0
# ifdown eth1
# ifup eth0
# ifup eth1
# ifup bond0

The way in os-net-config lacks 'ifdown bond0'. Due to that, ifup-routes are not run.
I think we should create a new bugzilla to focus on adding steps to run ifdown bond0.
I'll clone this bugzilla for adding steps to run ifdown bond0.

Best Regards,
Keigo Noha

Comment 4 Keigo Noha 2023-06-15 05:18:36 UTC
Hi Karthik,

In upstream, the proposed fix for this issue was merged into stable/wallaby and stable/train.
Is it possible to backport the fix into OSP17.1 and OSP16.2?

Best regards,
Keigo Noha