Bug 1331698 - Network booting in grub fails when using virtio-net and SLOF-20160223-0
Summary: Network booting in grub fails when using virtio-net and SLOF-20160223-0
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: SLOF
Version: 7.3
Hardware: ppc64le
OS: Unspecified
unspecified
low
Target Milestone: rc
: ---
Assignee: Thomas Huth
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-04-29 10:00 UTC by Thomas Huth
Modified: 2016-11-04 04:33 UTC (History)
5 users (show)

Fixed In Version: SLOF-20160223-2.gitdbbfda4.el7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-11-04 04:33:52 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2016:2355 0 normal SHIPPED_LIVE SLOF bug fix and enhancement update 2016-11-03 13:48:37 UTC

Description Thomas Huth 2016-04-29 10:00:49 UTC
Description of problem:
Booting via network in grub2 currently fails when using virtio-net as NIC and the current SLOF as firmware.

Version-Release number of selected component (if applicable):
SLOF-20160223

How reproducible:
100%

Steps to Reproduce:
1. In the /boot/grub2/grub.cfg file of the guest, add a section like this:
  menuentry 'Netboot' --class os {
     insmod net
     insmod ofnet
     insmod tftp
     insmod gzio
     insmod part_gpt
     set net_default_server=10.0.2.2
     net_add_addr eno0 ofnet_net 10.0.2.99
     echo 'Loading Linux ...'
     linux (tftp)/linux
     echo 'Loading initial ramdisk ...'
     initrd (tftp)/initrd
  }
2. On the host, prepare a folder with the TFTP files, e.g.:
  mkdir /tmp/tftp
  cp /boot/vmlinuz-3.10.0-373.el7.ppc64le /tmp/tftp/linux
  cp /boot/initramfs-3.10.0-373.el7.ppc64le.img /tmp/tftp/initrd
3. Run the guest like this:
  /usr/libexec/qemu-kvm -nographic -vga none -hda /path/to/guesthd.img \
             -device virtio-net-pci,netdev=mynet -netdev user,id=mynet
4. At the grub prompt, select the 'Netboot' entry.

Actual results:
error: Couldn't retrieve mac address..
error: card not found.
error: destination unreachable.

Expected results:
grub succeeds to load the files via network.

Additional info:
This is a known bug from upstream, which has been fixed shortly after the 20160223 release of SLOF. We should backport this patch from upstream:
 http://git.qemu.org/?p=SLOF.git;a=commitdiff;h=d78d7322efbe81027dbc

Comment 1 Thomas Huth 2016-05-03 07:09:00 UTC
Seems like I forgot to copy the whole QEMU command string in step 3 of the description. It should look like this:

  /usr/libexec/qemu-kvm -nographic -vga none -hda /path/to/guesthd.img \
             -device virtio-net-pci,netdev=mynet \
             -netdev user,id=mynet,tftp=/tmp/tftp

i.e. the "tftp=/tmp/tftp" was missing at the end.

Comment 2 Miroslav Rezanina 2016-05-06 12:48:00 UTC
Fix included in SLOF-20160223-2.gitdbbfda4.el7

Comment 4 Xu Han 2016-06-02 10:59:31 UTC
Reproduced this issue with SLOF-20160223-1.gitdbbfda4.el7.

After boot from entry 'Netboot', console showed:

  error: Couldn't retrieve mac address..
  error: card not found.
  error: destination unreachable.



Verified this with SLOF-20160223-3.gitdbbfda4.el7.noarch.

After boot from entry 'Netboot', console showed:

  Loading Linux ...
  Loading initrd ...
  Preparing to boot Linux version 3.10.0-418...
  ...


So base on the above test result, this bug has been fixed.

Comment 6 errata-xmlrpc 2016-11-04 04:33:52 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/RHEA-2016-2355.html


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