Bug 1242850 - Ipxe can not recognize "network device" when enable virtio-1 of virtio-net-pci
Summary: Ipxe can not recognize "network device" when enable virtio-1 of virtio-net-pci
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: ipxe
Version: 7.2
Hardware: x86_64
OS: Unspecified
high
high
Target Milestone: rc
: ---
Assignee: Ladi Prosek
QA Contact: Virtualization Bugs
URL:
Whiteboard:
: 1358198 (view as bug list)
Depends On:
Blocks: 1288337
TreeView+ depends on / blocked
 
Reported: 2015-07-14 09:21 UTC by Qian Guo
Modified: 2016-11-04 00:36 UTC (History)
11 users (show)

Fixed In Version: ipxe-20160127-3.git6366fa7a.el7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-11-04 00:36:20 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Can not recognize the network device (19.61 KB, image/png)
2015-07-14 09:21 UTC, Qian Guo
no flags Details
ctrl-B, can not find any network device (19.71 KB, image/png)
2015-07-14 09:21 UTC, Qian Guo
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2016:2214 0 normal SHIPPED_LIVE ipxe bug fix and enhancement update 2016-11-03 13:24:33 UTC

Description Qian Guo 2015-07-14 09:21:17 UTC
Created attachment 1051708 [details]
Can not recognize the network device

Description of problem:
Try to boot via network when enable virtio-1 of virtio-net-pci, but ipxe can not recognize the network device.

Version-Release number of selected component (if applicable):
ipxe-roms-qemu-20130517-7.gitc4bce43.el7.noarch
kernel-3.10.0-294.el7.x86_64
qemu-kvm-rhev-2.3.0-9.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Try to boot from virtio-net-pci when enable virtio-1
2.
3.

Actual results:
Can not boot from the network device, ipxe can not recognize the network device

Expected results:
Can boot from network devbice

Additional info:
if disable virtio-1, works well

Comment 1 Qian Guo 2015-07-14 09:21:48 UTC
Created attachment 1051709 [details]
ctrl-B, can not find any network device

Comment 5 juzhang 2016-01-14 09:55:26 UTC
Hi Weliao, 

Could you have a try?

Comment 8 Stefan Hajnoczi 2016-02-29 11:01:02 UTC
I investigated requirements for a VIRTIO 1.0 Transitional driver.  Today iPXE only implements the virtio 0.9.5 draft and therefore does not support VIRTIO 1.0 devices.

Unfortunately I do not have time to write patches at the moment, but here are the changes necessary for VIRTIO 1.0 support.

A "Transitional" driver supports both virtio 0.9.5 and VIRTIO 1.0.  The VIRTIO_F_VERSION_1 feature bit is used to select mode.

PCI IDs:
1. VIRTIO 1.0-only virtio-net uses PCI Device ID 0x1041 instead of 0x1000.
2. Keep in mind that Transitional devices support both virtio 0.9.5 and VIRTIO 1.0.  The virtio-net PCI Device ID remains 0x1000 for Transitional devices.

Device Probing:
1. Check PCI Capabilities for PCI_CAP_ID_VNDR.  The most important one is VIRTIO_PCI_CAP_COMMON_CFG (similar to the hardware registers previously accessed via the first I/O BAR).
2. If VIRTIO_PCI_CAP_COMMON_CFG isn't found, fall back to existing virtio 0.9.5 code.

Device Initialization:
1. Add S_FEATURES_OK step to Status register handshake (S_DRIVER_OK, etc).
2. Update for VIRTIO 1.0's more flexible virtqueue layout and program the vring hardware registers as necessary.

Virtqueues:
1. Use little-endian for all accesses.

Comment 9 Ladi Prosek 2016-04-17 15:39:29 UTC
VIRTIO 1.0 support added in upstream commits 2379494, 7b499f8, 8a055a2, 988243c.

Comment 10 Miroslav Rezanina 2016-07-15 05:24:13 UTC
Fix included in ipxe-20160127-3.git6366fa7a.el7

Comment 12 weliao 2016-07-19 05:44:58 UTC
Reproduced this bug with following versions:
ipxe-roms-qemu-20160127-2.git6366fa7a.el7.noarch
qemu-kvm-rhev-2.6.0-13.el7.x86_64
3.10.0-469.el7.x86_64
Steps to Reproduce:
1.Try to boot from virtio-net-pci when enable virtio-1
result:
Can not boot from the network device, ipxe can not recognize the network device

Verify this bug with following versions:
ipxe-roms-qemu-20160127-3.git6366fa7a.el7.noarch
qemu-kvm-rhev-2.6.0-13.el7.x86_64
3.10.0-469.el7.x86_64
the same steps:
result: Can boot from network device.

So this bug was fix well.

Comment 13 jingzhao 2016-07-22 10:01:32 UTC
*** Bug 1358198 has been marked as a duplicate of this bug. ***

Comment 14 weliao 2016-08-23 07:08:50 UTC
According to #comment12,change the status to VERIFIED.

Comment 16 errata-xmlrpc 2016-11-04 00:36:20 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://rhn.redhat.com/errata/RHBA-2016-2214.html


Note You need to log in before you can comment on or make changes to this bug.