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 1615252

Summary: Service NetworkManager cannot be started on virt-p2v client when using BCM5719 Gigabit Ethernet
Product: Red Hat Enterprise Linux 7 Reporter: zhoujunqin <juzhou>
Component: libguestfsAssignee: Richard W.M. Jones <rjones>
Status: CLOSED NOTABUG QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.6CC: juzhou, mxie, ptoscano, rjones, tzheng, xiaodwan
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: P2V
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-05-13 09:57:32 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:
Attachments:
Description Flags
Screenshot-1
none
Screenshot-2
none
Screenshot-3
none
dmesg on my host until i load tg3 driver manually
none
reply for lspci -vvv output
none
journalctl.log
none
add-udev none

Description zhoujunqin 2018-08-13 07:34:38 UTC
Created attachment 1475490 [details]
Screenshot-1

Description of problem:
Service NetworkManager cannot be started on virt-p2v client when using BCM5719 Gigabit Ethernet, it leading to "Test connection" failed with error: 
ssh: connect to host 10.73.xx.xx port:22: Network is unreachable 

Version-Release number of selected component (if applicable):
virt-v2v-1.38.2-10.el7.x86_64
libguestfs-1.38.2-10.el7.x86_64
libvirt-4.5.0-6.el7.x86_64
qemu-kvm-rhev-2.12.0-9.el7.x86_64
virt-p2v-1.38.2-3.el7.noarch

How reproducible:
100%

Steps to Reproduce:
1. Install rhel7.5 system via PXE on host with BCM5719 Gigabit Ethernet inserted.
2. Boot host into virt-p2v client via virt-p2v-1.38.2-3.el7.iso file attached.
3. Input conversion server info and check the test connection.

Actual results:
Step1: After installation finished, login host and check the network works: getting ip address successfully.

Step3: "Test connection" failed with with error: ssh: connect to host 10.73.xx.xx port:22: Network is unreachable 
3.1 Click "Network Connections", finding eth0 is never used, then close this window, details please see screenshot-1.

3.2 Click "Xterm", then to check network status, details please see screenshot-2, what's more, NetworkManager service is failed to start.
# ethtool -i eth0
Cannot get driver information: No such device

Expected results:
Host can get ip address successfully on virt-p2v client. 

Additional info:
I also test another ethernet type BCM5720 Gigabit Ethernet card on another host with same rhel7.5 os installed, it can pass "Test Connection" successfully, and service NetworkManager is running, please see screenshot-3.

# ethtool -i eth0 
driver: tg3
version: 3.137
firmware-version: FFV20.6.52 bc 5720-v1.39
expansion-rom-version: 
bus-info: 0000:01:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: no

Comment 2 zhoujunqin 2018-08-13 07:35:42 UTC
Created attachment 1475491 [details]
Screenshot-2

Comment 3 zhoujunqin 2018-08-13 07:51:57 UTC
Created attachment 1475493 [details]
Screenshot-3

Comment 4 zhoujunqin 2018-08-23 11:10:32 UTC
Additional information for this bug:
1. On virt-p2v client page, turn to command line page:
# ip a 
->only lo shows

Then check network driver 'tg3' existence

# lsmod |grep tg3

Try to load tg3 module manually.
# modprobe  tg3
[root@client ~]# lsmod |grep tg3
tg3                   174781  0 
ptp                    19231  1 tg3

After i load tg3 driver manually, then eth0 can get network and can connect to conversion server successfully.

So rjones, could you help me have a look of this case, why tg3 dirver cannot load automatically on my host, thanks.

Comment 5 Richard W.M. Jones 2018-08-23 11:51:50 UTC
Sorry I missed this one; is it possible to get the complete dmesg from
the host?

Comment 6 zhoujunqin 2018-08-24 08:07:34 UTC
Created attachment 1478430 [details]
dmesg on my host until i load tg3 driver manually

Comment 7 zhoujunqin 2018-08-24 08:09:15 UTC
(In reply to Richard W.M. Jones from comment #5)
> Sorry I missed this one; is it possible to get the complete dmesg from
> the host?

Hi rjones,
I have attached dmesg file on host until i load tg3 driver manually, please have a look, thanks.

Comment 9 Richard W.M. Jones 2018-08-24 09:12:50 UTC
I see a few bugs about BCM5719 not being recognized at boot,
but none of them have a resolution.

Could you collect:

# lspci -vvv

from the machine?

Comment 10 zhoujunqin 2018-08-24 09:22:52 UTC
Created attachment 1478437 [details]
reply for lspci -vvv output

Comment 12 Richard W.M. Jones 2018-08-24 15:45:51 UTC
Don Dutile asks:

Is the PCI ID (14e4:1657) in the
/lib/modules/<kernel-version>/modules.alias file?

Comment 13 Richard W.M. Jones 2018-08-25 06:33:10 UTC
Do you ever see a message like this in the logs:

tg3: No firmware

Comment 14 Richard W.M. Jones 2018-08-26 14:37:09 UTC
Also could you check:

# lsinitrd -k $(uname -r) |grep tg3

Comment 15 zhoujunqin 2018-08-27 10:22:09 UTC
(In reply to Richard W.M. Jones from comment #14)
> Also could you check:
> 
> # lsinitrd -k $(uname -r) |grep tg3

Output for this command is none, thanks.

Comment 16 zhoujunqin 2018-08-27 10:27:34 UTC
(In reply to Richard W.M. Jones from comment #13)
> Do you ever see a message like this in the logs:
> 
> tg3: No firmware

I checked again, so tg3 related message in /var/log/dmesg, thanks.

Comment 17 zhoujunqin 2018-08-27 10:29:46 UTC
(In reply to Richard W.M. Jones from comment #12)
> Don Dutile asks:
> 
> Is the PCI ID (14e4:1657) in the
> /lib/modules/<kernel-version>/modules.alias file?

Yes, it is.
alias pci:v000014E4d00001657sv*sd*bc*sc*i* tg3

Comment 18 Richard W.M. Jones 2018-08-28 10:12:34 UTC
Is there anything interesting in the full logs?  Can you run this
command and attach the full log:

# journalctl > /var/tmp/log

Comment 19 zhoujunqin 2018-08-28 10:48:56 UTC
Created attachment 1479209 [details]
journalctl.log

Comment 20 Richard W.M. Jones 2018-08-28 12:48:54 UTC
The only thing we spotted which looks suspicious/bad is:

Aug 27 08:19:21 localhost systemd-udevd[775]: worker [786] /devices/pci0000:00/0000:00:1c.0/0000:02:00.0 is taking a long time
Aug 27 08:19:21 localhost systemd-udevd[775]: worker [787] /devices/pci0000:00/0000:00:1c.0/0000:02:00.1 is taking a long time
Aug 27 08:19:21 localhost systemd-udevd[775]: worker [788] /devices/pci0000:00/0000:00:1c.0/0000:02:00.2 is taking a long time
Aug 27 08:19:21 localhost systemd-udevd[775]: worker [789] /devices/pci0000:00/0000:00:1c.0/0000:02:00.3 is taking a long time

and then a couple of minutes later:

Aug 27 08:21:21 localhost systemd-udevd[775]: worker [786] /devices/pci0000:00/0000:00:1c.0/0000:02:00.0 timeout; kill it
Aug 27 08:21:21 localhost systemd-udevd[775]: seq 3353 '/devices/pci0000:00/0000:00:1c.0/0000:02:00.0' killed
Aug 27 08:21:21 localhost systemd-udevd[775]: worker [787] /devices/pci0000:00/0000:00:1c.0/0000:02:00.1 timeout; kill it
Aug 27 08:21:21 localhost systemd-udevd[775]: seq 3354 '/devices/pci0000:00/0000:00:1c.0/0000:02:00.1' killed
Aug 27 08:21:21 localhost systemd-udevd[775]: worker [788] /devices/pci0000:00/0000:00:1c.0/0000:02:00.2 timeout; kill it
Aug 27 08:21:21 localhost systemd-udevd[775]: seq 3355 '/devices/pci0000:00/0000:00:1c.0/0000:02:00.2' killed
Aug 27 08:21:21 localhost systemd-udevd[775]: worker [789] /devices/pci0000:00/0000:00:1c.0/0000:02:00.3 timeout; kill it
Aug 27 08:21:21 localhost systemd-udevd[775]: seq 3356 '/devices/pci0000:00/0000:00:1c.0/0000:02:00.3' killed

However there's no further information about why exactly those udev processes
were taking a long time.

I still think this is some sort of kernel/systemd issue and not really related
to virt-p2v.

Comment 21 Richard W.M. Jones 2018-08-28 13:05:01 UTC
Is it possible you could check the firmware version of the Broadcom
card, and if necessary update it?  See:
https://bugzilla.redhat.com/show_bug.cgi?id=1618856#c9

Comment 22 Richard W.M. Jones 2018-08-28 13:06:33 UTC
Sorry, that's actually a different Broadcom card, so those
firmware images are probably not relevant.

However it might be good to check that the card is using the
latest possible firmware.  If you have troubles finding it
let me know and I'll see if I can find something.

Comment 23 Richard W.M. Jones 2018-08-30 09:08:39 UTC
After discussion with the reporter we believe that this bug
is caused by using a virtual CD which is located (physically)
very far from the blade which is running virt-p2v.  This
causes long delays when running udev jobs, causing the
timeouts observed.

You can change the timeout on the kernel command line by adding:

  udev.event-timeout=6000

But in the meantime this is not really a bug that we can fix
easily in virt-p2v.

Possibly the udev default timeout could or should be changed to
be longer.

Comment 24 zhoujunqin 2018-09-12 04:52:22 UTC
(In reply to Richard W.M. Jones from comment #23)
> After discussion with the reporter we believe that this bug
> is caused by using a virtual CD which is located (physically)
> very far from the blade which is running virt-p2v.  This
> causes long delays when running udev jobs, causing the
> timeouts observed.
> 
> You can change the timeout on the kernel command line by adding:
> 
>   udev.event-timeout=6000
> 
> But in the meantime this is not really a bug that we can fix
> easily in virt-p2v.
> 
> Possibly the udev default timeout could or should be changed to
> be longer.

Hi rjones,
If i understand you correctly, we have to add timeout option on the kernel command line, then check on virt-p2v client page, it means, if we run
# cat /proc/cmdline
initrd=initrd0.img root=live:CDLABEL=virt-p2v-1.38.2-5.el7 rootfstype=auto ro rd.live.image quiet console=tty0 console=ttyS0,115200 rd_NO_PLYMOUTH net.ifnames=0 rd.luks=0 rd.md=0 rd.dm=0  BOOT_IMAGE=vmlinuz0 

then we can see timeout option, right? 
But i don't know where to set it, i tried set timeout on p2v host which we want to convert, but it seems meaningless, it also failed to 'Test Connection' on virt-p2v client, could you give me some more detail information, thanks.

Comment 25 Richard W.M. Jones 2018-09-14 10:26:37 UTC
When the virt-p2v ISO boots, interrupt the boot at the kernel screen.
You should be able to edit the kernel command line to add the
udev.event-timeout setting.

Comment 26 mxie@redhat.com 2018-10-08 07:31:52 UTC
1.Adding udev.event-timeout=6000 into kernel command line via interrupting virt-p2v booting, 

2.Found there is only network "eth1" after booting into p2v client, and eth1 can't obtain IP, actually, eth0 is linked the network port, so modify the network script to change network name from eth1 to eth0

3.Both eth0 and eth1 can load tg3 module automatically

4.But eth0 still can't obtain IP and service network can't start,pls refer to screenshot "add-udev"

Comment 27 mxie@redhat.com 2018-10-08 07:32:17 UTC
Created attachment 1491530 [details]
add-udev

Comment 28 Richard W.M. Jones 2018-10-12 11:16:05 UTC
While it's unfortunate that we still cannot make virt-p2v work, I
would say that _this_ bug (cannot load tg3 driver) has indeed been
fixed by using the longer udev timeout.  This appears to confirm the
theory in comment 23.

Is it possible that you can test this using a virtual CD which
isn't located so far away from the actual system?  Although we have
fixed the udev problem, these lengthy delays could cause other
issues -- for example it is plausible that udev now loads the
correct driver, but it does it so late in the boot process that
NetworkManager (or whatever is responsible for the network) has
already started, or NM itself is timing out, or something like that.

Comment 29 mxie@redhat.com 2018-11-07 09:53:42 UTC
Hi rjones,

   Sorry, I missed this needinfo, as comment8 shown, network has no problem in p2v client when p2v iso is mounted on virtual media via beijing URL and image file.

Comment 30 Richard W.M. Jones 2019-05-13 09:57:32 UTC
Closing per comment 23 etc.