[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] bug in starting xen machines - expectation of /dev/sda1 existing on *host*



how about running MAKEDEV sda in a known directory, to
create the sda* nodes in /var/tmp for example?

only thing to watch out for is that /sbin/MAKEDEV has been modified to
go "if udev installed, cd /.dev".

which is a bit stupid if you ask me.

so if you do if -x /.dev mkdir /.dev; cd /.dev; /sbin/MAKEDEV sda
then check the major/minor nums on /.dev/sda* then you have no need to
rely on /dev/sda* existing or not existing.

l.

On Thu, Dec 30, 2004 at 02:25:03PM +0000, M.A. Williamson wrote:
> This is a known limitation... :-(
> 
> >... what has the existence or otherwise of /dev/sda1 on the
> >xen master machine got to do with the guest OSes?
> 
> In order to create the guest, Xend needs to look up the major / minor for 
> the device name in the guest you specified. It has to do this on dom0's 
> filesystem, so if there isn't a /dev/sda1 there it'll fail.
> 
> The current workaround is to specify the device number explicitly (e.g. 
> phy:0801 should work for /dev/sda1).
> 
> The long-term fix would be to include a table for Xend to generate device 
> numbers from, thus eliminating the dependency on these nodes existing in 
> dom0.
> 
> HTH,
> Mark
> 
> >to "fix" this problem, you must cp -aux /.dev/sd* /dev.
> >
> >l.
> >
> >[2004-12-29 22:11:16 xend] DEBUG (XendDomainInfo:720) init_domain> 
> >Created domain=1 name=xenselinuxnfs memory=32 [2004-12-29 22:11:16 xend] 
> >INFO (console:92) Created console id=12 domain=1 port=9601 [2004-12-29 
> >22:11:17 xend] DEBUG (blkif:146) Connecting blkif <BlkifBackendInterface 
> >1 0> [2004-12-29 22:11:17 xend] INFO (XendRoot:91) EVENT> 
> >xend.console.create [12, 1, 9601] [2004-12-29 22:11:17 xend] DEBUG 
> >(XendDomainInfo:1099) Creating vbd dom=1 uname=phy:/dev/hda17 [2004-12-29 
> >22:11:17 xend] DEBUG (blkif:63) exception looking up device number for 
> >sda1: [Errno 2] No such file or directory: '/dev/sda1' [2004-12-29 
> >22:11:17 xend] DEBUG (XendDomainInfo:674) Destroying vbds for domain 1 
> >[2004-12-29 22:11:17 xend] DEBUG (blkif:541) Destroying blkif domain=1 
> >[2004-12-29 22:11:17 xend] DEBUG (XendDomainInfo:634) Closing console, 
> >domain 1 [2004-12-29 22:11:17 xend] DEBUG (XendDomainInfo:622) Closing 
> >channel to domain 1 [2004-12-29 22:11:17 xend] ERROR (SrvBase:162) 
> >op=create: vbd: Device not found: sda1 Traceback (most recent call last):
> >  File "/usr/lib/python2.3/site-packages/twisted/internet/defer.py", 
> >line 338, in _runCallbacks
> >    self.result = callback(self.result, *args, **kw)
> >  File "/lib/python/xen/xend/XendDomainInfo.py", line 975, in <lambda>
> >    d.addCallback(lambda x: self.create_devices())
> >  File "/lib/python/xen/xend/XendDomainInfo.py", line 802, in 
> >create_devices
> >    v = dev_handler(self, dev, dev_index)
> >  File "/lib/python/xen/xend/XendDomainInfo.py", line 1102, in vm_dev_vbd
> >    defer = ctrl.attachDevice(idx, val, recreate=recreate)
> >  File "/lib/python/xen/xend/server/blkif.py", line 530, in attachDevice
> >    dev = self.addDevice(idx, config)
> >  File "/lib/python/xen/xend/server/blkif.py", line 515, in addDevice
> >    dev = BlkDev(idx, self, config )
> >  File "/lib/python/xen/xend/server/blkif.py", line 318, in __init__
> >    self.configure(config)
> >  File "/lib/python/xen/xend/server/blkif.py", line 335, in configure
> >    raise VmError('vbd: Device not found: %s' % self.dev)
> >VmError: vbd: Device not found: sda1
> >
> >
> >

-- 
--
<a href="http://lkcl.net";>http://lkcl.net</a>
--


-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.