Bug 1931778

Summary: failed to recreate VF if VF NM profiles exists
Product: Red Hat Enterprise Linux 8 Reporter: Mingyu Shi <mshi>
Component: nmstateAssignee: Gris Ge <fge>
Status: CLOSED ERRATA QA Contact: Mingyu Shi <mshi>
Severity: medium Docs Contact:
Priority: medium    
Version: 8.4CC: ferferna, jiji, jishi, mburman, network-qe, till
Target Milestone: rcKeywords: Reopened, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: nmstate-1.1.0-0.6.alpha6.el8 Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-11-09 17:42:57 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
bash.log none

Description Mingyu Shi 2021-02-23 07:55:55 UTC
Created attachment 1758776 [details]
bash.log

Description of problem:
If NM profiles of VF instances exists, corresponding VF creation will fail at the first time. 

Version-Release number of selected component (if applicable):
nmstate-1.0.2-0.20210218100459029637.pr1520.23.g0df0f6e.el8.noarch
nispor-1.0.1-3.el8.x86_64
NetworkManager-1.30.0-0.10.el8.x86_64

How reproducible:
100%

Steps to Reproduce:
Given PF name ens2f0
1. Use nmstate to create VF by editing ens2f0.ethernet.sr-iov.total-vfs: ens2f0v0, v1, v2...
2. Use nmstate to take ens2f0vN up(state: up)
3. Use nmstate to change PF to 'state: absent'
4. Do step 1

Actual results:
failed
  File "/usr/lib/python3.6/site-packages/libnmstate/ifaces/ifaces.py", line 656, in verify
    cur_iface.state_for_verify(),
libnmstate.error.NmstateVerificationError:
desired
=======
---
name: ens2f0v0
type: ethernet
state: down
 
current
=======
---
name: ens2f0v0
type: ethernet
state: up
ipv4:
  enabled: false
ipv6:
  enabled: false
lldp:
  enabled: false
mac-address: 7E:9D:6F:65:39:C2
mtu: 1500
 
difference
==========
--- desired
+++ current
@@ -1,4 +1,12 @@
 ---
 name: ens2f0v0
 type: ethernet
-state: down
+state: up
+ipv4:
+  enabled: false
+ipv6:
+  enabled: false
+lldp:
+  enabled: false
+mac-address: 7E:9D:6F:65:39:C2
+mtu: 1500

Expected results:
No failure

Additional info:

Comment 1 Fernando F. Mancera 2021-06-22 00:37:05 UTC
Hi Mingyu, currently it is strange an user will need to manage the VFs of SR-IOV. I understand this is a real problem but we are out of capacity. I am closing this as WONTFIX, please re-open if this is affecting any user.

Thanks,
Fernando.

Comment 10 Mingyu Shi 2021-07-13 09:24:53 UTC
Verified with versions:
nmstate-1.1.0-0.7.alpha7.el8.noarch
nispor-1.1.1-1.el8.x86_64
NetworkManager-1.32.2-1.el8.x86_64

Steps to Reproduce:
Given PF name ens2f0
1. Use nmstate to create VF by editing ens2f0.ethernet.sr-iov.total-vfs: ens2f0v0, v1, v2...
2. Use nmstate to take ens2f0vN up(state: up)
3. Use nmstate to change PF to 'state: absent'
4. Do step 1

Currently, after step 3, NM profiles of VF(ens2f0v*) will remain. Step 4 works well now..

Comment 13 errata-xmlrpc 2021-11-09 17:42:57 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (nmstate bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2021:4157