|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] why xenstore-* hangs if xenstored is not started
On 22/06/10 08:32, Yu Zhiguo wrote:
Running xenstore-* when xenstored is not started, it will hang and
cannot accept any signal, e.g. SIGINT.
I seems that the process is blocked at accessing '/proc/xen/xenbus'.
# mount -t xenfs xenfs /proc/xen/
# xenstore-ls
call trace:
do_ls() -> xs_directory() -> xs_talkv() -> xs_write_all() -> write()
BLOCK is no problem but why process cannot accept signal, Any opinion?
If start xenstored in other console, xenstore-ls executes and then
receive the signal, seems the signal is pended...
That's the common behavior of task stuck in a kernel operation (ps aux
will show the task at D, and /proc/<pid>/wchan will tell you exactly
where it's blocked in the kernel).
the write is going to wait for a xenstored reply in kernel mode since by
default the xenstore-* tools use the kernel xenstore page to communicate
with xenstored.
The unix socket operations doesn't have this "problems" (xenstore-* -s)
--
Vincent
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|