[Pkg-xen-devel] Bug#638152: Bug#638152: Acknowledgement (Error: Device 51712 (vbd) could not be connected. Hotplug scripts not working.)

Ian Campbell ijc at hellion.org.uk
Wed Aug 17 09:53:20 UTC 2011


On Wed, 2011-08-17 at 12:24 +0300, Timo Juhani Lindfors wrote:
> Hi,
> 
> inspired by
> 
> http://www.2virt.com/blog/?category_name=xen
> 
> I ran
> 
> #!/bin/bash
> function dumpkey() {
>  local param=${1}
>  local key
>  local result
>  result=$(xenstore-list ${param})
>  if [ "${result}" != "" ] ; then
>  for key in ${result} ; do dumpkey ${param}/${key} ; done
>  else
>  echo -n ${param}'='
>  xenstore-read ${param}
>  fi
> }
> for key in /vm /local/domain /tool ; do dumpkey ${key} ; done

FWIW xenstore-ls (perhaps with -f mostly prints the same thing...

> 
> and got
> 
> /vm/00000000-0000-0000-0000-000000000000/on_xend_stop=ignore

Stuff under /vm is probably not interesting in this case.
[...]
> /local/domain/0/vm=/vm/00000000-0000-0000-0000-000000000000-5
> /local/domain/0/device=
> /local/domain/0/control/platform-feature-multiprocessor-suspend=1
> /local/domain/0/error=
> /local/domain/0/memory/target=6553128
> /local/domain/0/guest=
> /local/domain/0/hvmpv=
> /local/domain/0/data=
> /local/domain/0/cpu/1/availability=online
> /local/domain/0/cpu/3/availability=online
> /local/domain/0/cpu/2/availability=online
> /local/domain/0/cpu/0/availability=online
> /local/domain/0/description=
> /local/domain/0/console/limit=1048576
> /local/domain/0/console/type=xenconsoled
> /local/domain/0/domid=0
> /local/domain/0/name=Domain-0
> /local/domain/0/backend/vbd/9/51712/domain=squeeze64
> /local/domain/0/backend/vbd/9/51712/frontend=/local/domain/9/device/vbd/51712
> /local/domain/0/backend/vbd/9/51712/uuid=17f3af59-b92c-21f5-b15b-901b46fd60ea
> /local/domain/0/backend/vbd/9/51712/bootable=1
> /local/domain/0/backend/vbd/9/51712/dev=xvda
> /local/domain/0/backend/vbd/9/51712/state=5
> /local/domain/0/backend/vbd/9/51712/params=/home/lindi-sudo/squeeze64/disk.img
> /local/domain/0/backend/vbd/9/51712/mode=w
> /local/domain/0/backend/vbd/9/51712/online=0
> /local/domain/0/backend/vbd/9/51712/frontend-id=9
> /local/domain/0/backend/vbd/9/51712/type=file
> /local/domain/0/backend/vbd/10/51712/domain=squeeze64
> /local/domain/0/backend/vbd/10/51712/frontend=/local/domain/10/device/vbd/51712
> /local/domain/0/backend/vbd/10/51712/uuid=9e9f7c10-856d-3bf0-c087-b95c16a6955d
> /local/domain/0/backend/vbd/10/51712/bootable=1
> /local/domain/0/backend/vbd/10/51712/dev=xvda
> /local/domain/0/backend/vbd/10/51712/state=5
> /local/domain/0/backend/vbd/10/51712/params=/home/lindi-sudo/squeeze64/disk.img
> /local/domain/0/backend/vbd/10/51712/mode=w
> /local/domain/0/backend/vbd/10/51712/online=0
> /local/domain/0/backend/vbd/10/51712/frontend-id=10
> /local/domain/0/backend/vbd/10/51712/type=file
> /local/domain/0/backend/console/9=
> /local/domain/0/backend/console/10=
> /tool/xenstored=
> 
> References to disk.img are interesting since the guest is not running
> anymore

The backend is in state = 5 (=Closing), which is the state which the
toolstack switches too inorder to request the backend to shutdown. Since
the backend has not responded and switch to state = 6 (=Closed) the
toolstack hasn't cleaned up yet. That is consistent with...

> [...]
> /local/domain/0/backend/vbd/12/51712/domain=squeeze64
> /local/domain/0/backend/vbd/12/51712/frontend=/local/domain/12/device/vbd/51712
> /local/domain/0/backend/vbd/12/51712/uuid=2d3ac5a5-d7c2-0186-93e1-e0515d5826ed
> /local/domain/0/backend/vbd/12/51712/bootable=1
> /local/domain/0/backend/vbd/12/51712/dev=xvda
> /local/domain/0/backend/vbd/12/51712/state=1

... this. state = 1 (=Init I think) is the initial state setup by the
toolstack, the backend hasn't reacted and moved on to state 2+.

[...]
> So, where's my udev event? ;-)

I think you have a more fundamental issue which is that the backends are
not reacting at all to the creation of new backends.

You do have them loaded right? What does "ls /sys/bus/xen*/drivers"
show?

You haven't by any chance restarted xenstored since you booted this dom0
have you? xenstored doesn't restart very gracefully and in particular
one thing which gets lost is the backend's watches which trigger them to
see a new device entry. If this is the case then I'm afraid the only
option is to reboot the entire system :-(

Ian.
-- 
Ian Campbell
Current Noise: Cradle Of Filth - Lilith Immaculate

You can now buy more gates with less specifications than at any other time
in history.
		-- Kenneth Parker






More information about the Pkg-xen-devel mailing list