Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.

Bug 1687111

Summary: AttributeError: 'USBNetDevice' object has no attribute 'name' when starting redfish-finder service
Product: Red Hat Enterprise Linux 8 Reporter: Rachel Sibley <rasibley>
Component: redfish-finderAssignee: Neil Horman <nhorman>
Status: CLOSED ERRATA QA Contact: Rachel Sibley <rasibley>
Severity: high Docs Contact: Jaroslav Klech <jklech>
Priority: high    
Version: 8.0CC: ahuang12, bhu, core-kernel-mgr, jkachuck, jklech, nhorman, Smahmoud, tbowling, toneata
Target Milestone: rcKeywords: ZStream
Target Release: 8.1Flags: pm-rhel: mirror+
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
.The `redfish-finder` service properly sets up BMC communication Previously, the `redfish-finder` service became unresponsive when it could not find a USB network interface for the baseboard management controller (BMC). Consequently, `redfish-finder` failed to set up BMC communication. This update reverts an early patch that byte-swaps the USB IDs to work around an early firmware issue. As a result, `redfish-finder` now functions as expected.
Story Points: ---
Clone Of:
: 1717383 (view as bug list) Environment:
Last Closed: 2019-11-05 20:53:59 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:
Embargoed:
Bug Depends On:    
Bug Blocks: 1660905, 1666894, 1671421, 1717383    

Description Rachel Sibley 2019-03-09 22:04:40 UTC
Description of problem:
Starting redfish-finder service fails with with the following error: AttributeError: 'USBNetDevice' object has no attribute 'name'

Version-Release number of selected component (if applicable):
~]# rpm -q redfish-finder
redfish-finder-0.2-1.el8.noarch

How reproducible:
Always

Steps to Reproduce:
1. yum info redfish-finder
2. systemctl start redfish-finder
3.

Actual results:
redfish-finder fails to start

Expected results:
redfish-finder starts successfully

Additional info:
~]# dmidecode --type 42
# dmidecode 3.2
Getting SMBIOS data from sysfs.
SMBIOS 3.2.1 present.
# SMBIOS implementations newer than version 3.2.0 are not
# fully supported by this version of dmidecode.

Handle 0x3532, DMI type 42, 169 bytes
Management Controller Host Interface
	Host Interface Type: Network
	Device Type: USB
		idVendor: 0x04b3
		idProduct: 0x4010
		Protocol ID: 04 (Redfish over IP)
			Service UUID: 868ec9e7-037d-1f46-9519-cb5fe0f45a63
			Host IP Assignment Type: Static
			Host IP Address Format: IPv4
			IPv4 Address: 192.168.1.2
			IPv4 Mask: 255.255.255.0
			Redfish Service IP Discovery Type: Static
			Redfish Service IP Address Format: IPv4
			IPv4 Redfish Service Address: 192.168.1.1
			IPv4 Redfish Service Mask: 255.255.255.0
			Redfish Service Port: 443
			Redfish Service Vlan: 0
			Redfish Service Hostname: redfish-devel-xcc


~]# systemctl status redfish-finder
● redfish-finder.service - Redfish host api discovery service
   Loaded: loaded (/usr/lib/systemd/system/redfish-finder.service; disabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Sat 2019-03-09 16:57:04 EST; 10s ago
  Process: 23811 ExecStart=/usr/bin/redfish-finder (code=exited, status=1/FAILURE)
 Main PID: 23811 (code=exited, status=1/FAILURE)

Mar 09 16:57:04 <redacted> redfish-finder[23811]:   File "/usr/bin/redfish-finder", line 453, in main
Mar 09 16:57:04 <redacted> redfish-finder[23811]:     conn = nmConnection(smbios_info.device)
Mar 09 16:57:04 <redacted> redfish-finder[23811]:   File "/usr/bin/redfish-finder", line 350, in __init__
Mar 09 16:57:04 <redacted> redfish-finder[23811]:     self.cmdlinedown = "nmcli con down id " + self.ifc.getifcname()
Mar 09 16:57:04 <redacted> redfish-finder[23811]:   File "/usr/bin/redfish-finder", line 50, in getifcname
Mar 09 16:57:04 <redacted> redfish-finder[23811]:     return self.name
Mar 09 16:57:04 <redacted> redfish-finder[23811]: AttributeError: 'USBNetDevice' object has no attribute 'name'
Mar 09 16:57:04 <redacted> systemd[1]: redfish-finder.service: Main process exited, code=exited, status=1/FAILURE
Mar 09 16:57:04 <redacted> systemd[1]: redfish-finder.service: Failed with result 'exit-code'.
Mar 09 16:57:04 <redacted> systemd[1]: Failed to start Redfish host api discovery service.

Comment 1 Neil Horman 2019-03-12 14:50:33 UTC
This needs an upstream backport to handle the usb device/vendor id swapping found on the lenovo firmware.  Now that the firmware is updated I can get the latest upstream sources to fix it.  Though your target release is set to 8.0.  Does this need to be a blocker (assuming we have time for that), or an 8.1 target with a z-stream backport

Comment 2 Rachel Sibley 2019-03-12 15:02:17 UTC
@nhorman I am ok with setting to 8.1 with a z-stream backport, I'm not sure how many customers are relying on this feature for 8.0, is there a workaround for this ?

Comment 3 Neil Horman 2019-03-12 16:24:43 UTC
ok, lets do this as an 8.1 fix with a z-stream.  The field workaround would be manual modification of /usr/bin/redfish-finder with a small patch.  Ugly, but workable.  And this will be an early z-stream batch, so I think we're ok.

Comment 4 Neil Horman 2019-04-25 11:34:30 UTC
*** Bug 1702863 has been marked as a duplicate of this bug. ***

Comment 7 Joseph Kachuck 2019-06-05 14:34:22 UTC
Hello,
This bug has been copied as 8.0.0 z-stream bug #1717383

Thank You
Joe Kachuck

Comment 9 Rachel Sibley 2019-09-25 16:14:48 UTC
Verified as fixed with latest redfish-finder rpm, I do see a warning about parsing, but the service started
successfully, a separate bz can be filed if deemed necessary:
redfish-finder: Unexpected error parsing ServiceConfig

Before:
================
~]# rpm -q redfish-finder
redfish-finder-0.2-1.el8.noarch

~]#  systemctl start redfish-finder
Job for redfish-finder.service failed because the control process exited with error code.
See "systemctl status redfish-finder.service" and "journalctl -xe" for details.

~]# systemctl status redfish-finder
● redfish-finder.service - Redfish host api discovery service
   Loaded: loaded (/usr/lib/systemd/system/redfish-finder.service; disabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Wed 2019-09-25 12:09:28 EDT; 13s ago
  Process: 18508 ExecStart=/usr/bin/redfish-finder (code=exited, status=1/FAILURE)
 Main PID: 18508 (code=exited, status=1/FAILURE)

Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18508]:   File "/usr/bin/redfish-finder", line 453, in main
Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18508]:     conn = nmConnection(smbios_info.device)
Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18508]:   File "/usr/bin/redfish-finder", line 350, in __init__
Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18508]:     self.cmdlinedown = "nmcli con down id " + self.ifc.getifcname()
Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18508]:   File "/usr/bin/redfish-finder", line 50, in getifcname
Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18508]:     return self.name
Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18508]: AttributeError: 'USBNetDevice' object has no attribute 'name'
Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com systemd[1]: redfish-finder.service: Main process exited, code=exited, status=1/FAILURE
Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com systemd[1]: redfish-finder.service: Failed with result 'exit-code'.
Sep 25 12:09:28 redfish-devel.desktop.lab.eng.rdu2.redhat.com systemd[1]: Failed to start Redfish host api discovery service.

After:
================
~]# rpm -q redfish-finder
redfish-finder-0.3-3.el8.noarch

~]# systemctl stop redfish-finder

~]# systemctl start redfish-finder

~]# systemctl status redfish-finder
● redfish-finder.service - Redfish host api discovery service
   Loaded: loaded (/usr/lib/systemd/system/redfish-finder.service; disabled; vendor preset: disabled)
   Active: active (exited) since Wed 2019-09-25 12:11:33 EDT; 5s ago
  Process: 18913 ExecStart=/usr/bin/redfish-finder (code=exited, status=0/SUCCESS)
 Main PID: 18913 (code=exited, status=0/SUCCESS)

Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18913]: Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/A>
Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18913]: redfish-finder: Getting dmidecode info
Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18913]: redfish-finder: Unexpected error parsing ServiceConfig
Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18913]: redfish-finder: Building NetworkManager connection info
Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18913]: redfish-finder: Obtaining OS config info
Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18913]: redfish-finder: Converting SMBIOS Host Config to NetworkManager Connection info
Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18913]: redfish-finder: Applying NetworkManager connection configuration changes
Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18913]: redfish-finder: Adding redfish host info to OS config
Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com redfish-finder[18913]: redfish-finder: Done, BMC is now reachable via hostname redfish-localhost
Sep 25 12:11:33 redfish-devel.desktop.lab.eng.rdu2.redhat.com systemd[1]: Started Redfish host api discovery service.

Comment 11 errata-xmlrpc 2019-11-05 20:53:59 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, 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-2019:3351