Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 351259 - app-emulation/xen-tools-4.0.1 pygrub fail to start grub2
Summary: app-emulation/xen-tools-4.0.1 pygrub fail to start grub2
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Xen Devs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-10 00:23 UTC by Daniele Palumbo
Modified: 2011-03-26 11:22 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniele Palumbo 2011-01-10 00:23:54 UTC
As described in:
http://lists.xensource.com/archives/html/xen-devel/2010-10/msg00077.html

at least with debian squeeze domU (dunno if other grub2 are affected) will fail with:
"Error: Boot loader didn't return any data!"

exploring `pygrub -i /path/to/image/with/grub2`
will show:
---
odo xen # pygrub -i /dev/vgOdoRaid5/squeeze 
Using <class 'grub.GrubConf.Grub2ConfigFile'> to parse /boot/grub/grub.cfg
WARNING:root:Unknown directive load_video
WARNING:root:Unknown directive terminal_output
Traceback (most recent call last):
  File "/usr/bin/pygrub", line 713, in <module>
    chosencfg = run_grub(file, entry, fs, incfg["args"])
  File "/usr/bin/pygrub", line 548, in run_grub
    g = Grub(file, fs)
  File "/usr/bin/pygrub", line 204, in __init__
    self.read_config(file, fs)
  File "/usr/bin/pygrub", line 412, in read_config
    self.cf.parse(buf)
  File "/usr/lib/python2.6/site-packages/grub/GrubConf.py", line 400, in parse
    self.add_image(Grub2Image(title, img))
  File "/usr/lib/python2.6/site-packages/grub/GrubConf.py", line 316, in __init__
    _GrubImage.__init__(self, title, lines)
  File "/usr/lib/python2.6/site-packages/grub/GrubConf.py", line 85, in __init__
    self.reset(lines)
  File "/usr/lib/python2.6/site-packages/grub/GrubConf.py", line 101, in reset
    self._parse(lines)
  File "/usr/lib/python2.6/site-packages/grub/GrubConf.py", line 96, in _parse
    map(self.set_from_line, lines)
  File "/usr/lib/python2.6/site-packages/grub/GrubConf.py", line 326, in set_from_line
    setattr(self, self.commands[com], arg.strip())
  File "/usr/lib/python2.6/site-packages/grub/GrubConf.py", line 104, in set_root
    self._root = GrubDiskPart(val)
  File "/usr/lib/python2.6/site-packages/grub/GrubConf.py", line 55, in __init__
    (self.disk, self.part) = str.split(",", 2)
  File "/usr/lib/python2.6/site-packages/grub/GrubConf.py", line 80, in set_part
    self._part = int(val)
ValueError: invalid literal for int() with base 10: 'msdos1'
odo xen #
---

Reproducible: Always

Steps to Reproduce:
1. try to start any squeeze domU with grub2 with paravirtualization

Actual Results:  
crash

Expected Results:  
boot the vm
Comment 1 Alexey Shvetsov archtester gentoo-dev 2011-03-26 11:22:58 UTC
Xen 4.1 in tree. Please test with it and reopen if it doesnt work