|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel]xl create PV guest with qcow/qcow2 disk images fail
On Wed, 9 Nov 2011, Chunyan Liu wrote:
> In a following email you wrote that without the sleep the device is
> "not prepared yet".
> What do you mean by that?
> The device is present but reading/writing to it returns an error?
>
> If so, rather than a sleep we need an explicit wait for the device
> to be ready. Even trying to read from the device in a loop until it
> succeeds would be better than a sleep. At least we would know exactly
> what we are doing and why we are doing it.
>
>
> OK, after checking qemu-nbd source code, I think I know where the problem is.
> I tried to fork_exec "qemu-nbd -c /dev/nbd0
> disk.img", with this command option, qemu-nbd will call daemon(3) to run in
> background and itself should exit immediately,
> that's why waitpid can successfully wait the exit of qemu-nbd pid and
> fork_exec will return 0. The problem is that I
> should not use fork_exec return value to decide if the disk.img is already
> connected to nbd device. That's not correct.
Good.
> This is not great. I would read /proc/partitions instead.
>
> Thanks, that's a better way to find if a nbd device is free. The whole thing
> (find a free nbd device and connect disk.img
> to that nbd device) seems better to write a script to do that and in libxl
> call that script.
Maybe, but I think it makes sense for it to be in libxl and after all
reading/writing a file can be done quite well in a library too.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|