Bug 1481180

Summary: iommu platform support for ipxe [rhel-7.4.z]
Product: Red Hat Enterprise Linux 7 Reporter: Oneata Mircea Teodor <toneata>
Component: ipxeAssignee: jason wang <jasowang>
ipxe sub component: ipxe-roms QA Contact: FuXiangChun <xfu>
Status: CLOSED ERRATA Docs Contact:
Severity: high    
Priority: high CC: ailan, chayang, hhan, jasowang, jherrman, juzhang, libvirt-qe, linville, michen, mtessun, wexu, xfu, yuma
Version: 7.4Keywords: ZStream
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ipxe-20170123-1.git4e85b27.el7_4.1 Doc Type: Bug Fix
Doc Text:
Previously, guest virtual machines that use the iPXE environment were not able to boot over a network if the Input/Output Memory Management Unit (IOMMU) mode was set for the virtio-net device. With this update, iPXE handles IOMMU setting correctly, and guests are able to boot properly in the described scenario.
Story Points: ---
Clone Of: 1467887 Environment:
Last Closed: 2017-09-05 11:32:40 UTC Type: ---
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: 1467887    
Bug Blocks:    

Description Oneata Mircea Teodor 2017-08-14 10:05:17 UTC
This bug has been copied from bug #1467887 and has been proposed to be backported to 7.4 z-stream (EUS).

Comment 3 Miroslav Rezanina 2017-08-17 07:07:45 UTC
Fix included in ipxe-20170123-1.git4e85b27.el7_4.1

Comment 5 FuXiangChun 2017-08-24 07:39:21 UTC
Verified component version as below:

ipxe-roms-qemu-20170123-1.git4e85b27.el7_4.1.noarch
ipxe-roms-20170123-1.git4e85b27.el7_4.1.noarch
ipxe-bootimgs-20170123-1.git4e85b27.el7_4.1.noarch

qemu-kvm-rhev-2.9.0-16.el7_4.5.x86_64
seabios-1.10.2-3.el7_4.1.x86_64
3.10.0-693.1.1.el7.x86_64

steps:

1. qemu-kvm cmd:
/usr/libexec/qemu-kvm ...

-device virtio-blk-pci,drive=system1,disable-legacy=on,disable-modern=off,id=boot_disk,iommu_platform=on,ats=on -drive file=/root/rhel74-bk.qcow2,format=qcow2,if=none,id=system1 \

-device virtio-net-pci,netdev=hostnet1,id=net1,mac=52:54:00:7e:af:e6,iommu_platform=on,disable-modern=off,disable-legacy=on -netdev tap,id=hostnet1,vhost=on \
....

2. Add "iommu=pt intel_iommu=on" to host kernel line

3. Add "intel_iommu=on" guest kernel line

Test result:
Guest can boot successfully via NIC.  and NIC works in guest.  

Hi Jason,
According to this test result. Can QE verify this bug?

Comment 6 FuXiangChun 2017-08-26 08:13:01 UTC
Append a test result.

1. First, I try to reproduce this bug with unfix ipxe-roms-20170123-1.git4e85b27.el7.noarch.

result:
ipxe cann't find NIC, and output this message as below:
........
Cound not open net0: Invalid argument (http://ipxe.org/1c5c4002) No more network devices
.....

2. Then, I use fixed ipxe-roms-20170123-1.git4e85b27.el7_4.1.noarch to boot guest.  

result:

ipxe can find net0 correctly and connect dhcp server successfully.

Comment 7 FuXiangChun 2017-08-26 08:14:05 UTC
According to comment5 & comment6. QE thinks this bug is fixed.

Comment 10 errata-xmlrpc 2017-09-05 11:32:40 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-2017:2589