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

Re: [Xen-users] Overcoming loopback device limitation - revisited



Hi John

I got stuck with a similar problem in the past :-( Before I reply to your question here is something learned about loop devices and Xen: Have the kernel be able to manage the same number of loop devices you have /dev directory. No less, no more (otherwise some unexpected things happen). Now to your questions: 1. A loop filesystem is nothing special. From the point of view of Dom0 it is nothing more than a file and since it nothing more than a file you create it using the command: `dd if=/dev/zero of=[filename] bs=Yk count=X (Y is a number and k stands for Kilobytes, X is also a number). Do note that block size is for DD only and has no implication for the block size used inside by the filesystem. After the file is created you simply run `mkfs -t [filesystem type] [filename]` to create the filesystem inside(mkfs will nag you about the file not being a block special device, answer yes to the proceed question). Last step is to mount the newly created filesystem somewhere in Dom0 with the command `mount -o loop [filename] [mount point] and populate it. 2. The commands `dd`, mkfs and mount are always installed in Linux you should be OK. If you don't have one of them something is very wrong with your installation. One important thing to note: `mkfs` is only a wrapper to the filesystem specific `mkfs`. Make sure that you have the binaries for the chosen filesystem. 3. Your loop devices and permissions seem all in order (I have the same exact configuration and it works). 4. About udev mojo: I have no clue, I don't use udev (I hate it and refuse to use it ;-))





Paolo


john maclean wrote:

Hi there chaps,

Just to get me up and running I ran `make world && make install` from
source. All went well until I started running out of loopback devices
to create guests. I know of the 8 devices limitation and I'm sure that
the loop "module" is built into the kernel;

modinfo loop
filename:       /lib/modules/2.6.16-xen/kernel/drivers/block/loop.ko
license:        GPL
alias:          block-major-7-*
vermagic:       2.6.16-xen SMP 686 gcc-3.3
depends:
parm:           max_loop:Maximum number of loop devices (1-256) (int)

OK, that number is more than enough for me. This is a laptop and I'd
want to manage about 12. So I use this boot time parameter even though
I know/think that it's a built in:-

cat /proc/cmdline
root=/dev/hda3 ro console=tty0 max_loop=32

To create some more loop back devices I ran the following:-

for X in $(seq 8 31); do mknod ;  MAKEDEV /dev/loop$X  b 7 $i ; chmod
660 /dev/loop$X; chown 0.disk /dev/loop$X;  done

Now I can only seem to have just one domU running!

#acid~#  xm list
Name                              ID Mem(MiB) VCPUs State  Time(s)
Domain-0                           0      512     1 r-----   108.4
vm01                               1       64     1 ------     0.3

acid:~# xm create vm00 -c /etc/xen/vm00
Using config file "/etc/xen/vm00".
Error: Device 769 (vbd) could not be connected. Backend device not found.

I have a few simple-ish questions that I'd a appreciate some answers for;
- What is the file system that creates loopback devices a required,
on the fly?
- How do I know if I have this?
- Did I give the newly created devices the wrong permissons?
- Why does it appear that all of the /dev/loop devices bar one are "blocked"?
- Do I have to do some /etc/udev mojo?

version:- xen-3.0.2-2
arch:- debian sarge
me:- very stuck ;)



_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

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