Hi Dave,
Nice to receive your indications.
Following your suggestions, The xapi has worked on a non-XCP platform. After
copying some scripts and excute files to the new host from the XCP, many basic
functions such as "xe sr-create" can work well. However, when I tried
to start a HVM(windowxp), the "xe vm-start" hanged up and output
nothing. I can not find any obvious indications in the xensource.log. Below is
the xensource.log.
Cheers,
Jay
[20091225T08:21:24.099Z|debug|suse11-32bit-53|231||thread_queue]
pop(vm_lifecycle_op) = VM.start VM.start R:851e45a12616
[20091225T08:21:24.099Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|locking_helpers] Acquired lock on VM
OpaqueRef:997aa428-e61e-21d1-41f0-c63987f59830 with token 2
[20091225T08:21:24.099Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] start: making sure the VM really is halted
[20091225T08:21:24.099Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] start: checking that VM can run on this host
[20091225T08:21:24.099Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|helpers] parsing lbr using sexpr
[20091225T08:21:24.100Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] start: bringing up domain in the paused state
[20091225T08:21:24.100Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|memory_control] logging into ballooning service
[20091225T08:21:24.100Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenstore-rpc] Checking pid 30562
[20091225T08:21:24.103Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenstore-rpc] Written request using id:
674b1c37-812c-36f3-019e-7ddbd6404c76
[20091225T08:21:24.103Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: watching xenstore paths: [
/squeezed/rpc/response/login/674b1c37-812c-36f3-019e-7ddbd6404c76 ] with timeout
1200.000000 seconds
[20091225T08:21:24.103Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: fired on
/squeezed/rpc/response/login/674b1c37-812c-36f3-019e-7ddbd6404c76
[20091225T08:21:24.103Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: value has appeared:
/squeezed/rpc/response/login/674b1c37-812c-36f3-019e-7ddbd6404c76 =
[20091225T08:21:24.104Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: Successfully finished watching xenstore after
0.000404 seconds
[20091225T08:21:24.105Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|memory_control] reserve_memory_range min=531456 max=531456
[20091225T08:21:24.105Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenstore-rpc] Checking pid 30562
[20091225T08:21:24.110Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenstore-rpc] Written request using id:
107f3b25-ba0a-fb4f-bd5a-91223df83104
[20091225T08:21:24.110Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: watching xenstore paths: [
/squeezed/rpc/response/reserve-memory-range/107f3b25-ba0a-fb4f-bd5a-91223df83104
] with timeout 1200.000000 seconds
[20091225T08:21:24.110Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: fired on
/squeezed/rpc/response/reserve-memory-range/107f3b25-ba0a-fb4f-bd5a-91223df83104
[20091225T08:21:29.113Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: fired on
/squeezed/rpc/response/reserve-memory-range/107f3b25-ba0a-fb4f-bd5a-91223df83104
[20091225T08:21:29.113Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: value has appeared:
/squeezed/rpc/response/reserve-memory-range/107f3b25-ba0a-fb4f-bd5a-91223df83104
=
[20091225T08:21:29.114Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: Successfully finished watching xenstore after
5.003802 seconds
[20091225T08:21:29.115Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|memory_control] reserve_memory_range actual = 531456
[20091225T08:21:29.115Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|memory_control] reserved_memory = 531456; min = 531456; max =
531456
[20091225T08:21:29.115Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] VM will have 1 hotplugged vcpus out of 1
[20091225T08:21:29.115Z| info|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] Memory free = 47508336; scrub = 0
[20091225T08:21:29.115Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] Regenerating the xenstored tree under: [/local/domain/28]
[20091225T08:21:29.121Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] Created domain with id: 28
[20091225T08:21:29.121Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] Created domain with domid: 28
[20091225T08:21:29.121Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|memory_control] transfer_reservation_to_domain
22db9b41-0df0-5076-99d1-bd4b455eb59b -> 28
[20091225T08:21:29.121Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenstore-rpc] Checking pid 30562
[20091225T08:21:29.125Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenstore-rpc] Written request using id:
73778027-4835-5cb2-8a68-385a3c9b035d
[20091225T08:21:29.125Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: watching xenstore paths: [
/squeezed/rpc/response/transfer-reservation-to-domain/73778027-4835-5cb2-8a68-385a3c9b035d
] with timeout 1200.000000 seconds
[20091225T08:21:29.125Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: fired on
/squeezed/rpc/response/reserve-memory-range/107f3b25-ba0a-fb4f-bd5a-91223df83104/kib
[20091225T08:21:29.126Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: value has appeared:
/squeezed/rpc/response/transfer-reservation-to-domain/73778027-4835-5cb2-8a68-385a3c9b035d
=
[20091225T08:21:29.126Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: Successfully finished watching xenstore after
0.000477 seconds
[20091225T08:21:29.127Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|memory_control] delete_reservation
22db9b41-0df0-5076-99d1-bd4b455eb59b
[20091225T08:21:29.127Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenstore-rpc] Checking pid 30562
[20091225T08:21:29.130Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenstore-rpc] Written request using id:
66068f5a-b770-e6e5-c737-b90f4ffbccd6
[20091225T08:21:29.130Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: watching xenstore paths: [
/squeezed/rpc/response/delete-reservation/66068f5a-b770-e6e5-c737-b90f4ffbccd6 ]
with timeout 1200.000000 seconds
[20091225T08:21:29.130Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: fired on
/squeezed/rpc/response/reserve-memory-range/107f3b25-ba0a-fb4f-bd5a-91223df83104/reservation_id
[20091225T08:21:29.130Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: value has appeared:
/squeezed/rpc/response/delete-reservation/66068f5a-b770-e6e5-c737-b90f4ffbccd6 =
[20091225T08:21:29.130Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: Successfully finished watching xenstore after
0.000411 seconds
[20091225T08:21:29.132Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] Verifying VDI records exist
[20091225T08:21:29.132Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] creating kernel
[20091225T08:21:29.132Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] build hvm "/usr/lib/xen/boot/hvmloader" vcpus:1
mem_max:524288 mem_target:524288 timeoffset:0
[20091225T08:21:29.132Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] build_pre domid=28; max=513 MiB; shadow=5 MiB
[20091225T08:21:29.133Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenguesthelper] connect: args = [ -mode hvm_build -domid 28
-store_port 2 -image /usr/lib/xen/boot/hvmloader -mem_max_mib 508 -mem_start_mib
512 -fork true ]
[20091225T08:21:29.162Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenguesthelper] VIRTUAL MEMORY ARRANGEMENT:\n Loader:
0000000000100000->0000000000142b20\n TOTAL:
0000000000000000->000000001fc00000\n ENTRY ADDRESS: 0000000000100000\n
[20091225T08:21:29.162Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] Read [1044476]
[20091225T08:21:29.164Z|debug|suse11-32bit-53|39 xal_listen||event] VM (domid:
-1) interesting device_event = change rtc
{0f31506d-f796-172d-e6ac-8c31528ae283,0}
[20091225T08:21:29.165Z|debug|suse11-32bit-53|39 xal_listen||dummytaskhelper]
task VM (domid: -1) device_event = change rtc
{0f31506d-f796-172d-e6ac-8c31528ae283,0} D:2c2483b9232b created
[20091225T08:21:29.165Z|debug|suse11-32bit-53|39 xal_listen|VM (domid: -1)
device_event = change rtc {0f31506d-f796-172d-e6ac-8c31528ae283,0}
D:2c2483b9232b|dummytaskhelper] task destroyed
[20091225T08:21:29.167Z|debug|suse11-32bit-53|39 xal_listen||event] VM (domid:
28) guest agent update
[20091225T08:21:29.168Z|debug|suse11-32bit-53|39 xal_listen||dummytaskhelper]
task Event thread updating guest metrics (domid: 28) D:1b6244e4a916 created
[20091225T08:21:29.170Z|debug|suse11-32bit-53|39 xal_listen|Event thread
updating guest metrics (domid: 28) D:1b6244e4a916|xapi_guest_metrics] Number of
entries in hashtbl: 0
[20091225T08:21:29.170Z|debug|suse11-32bit-53|39 xal_listen|Event thread
updating guest metrics (domid: 28) D:1b6244e4a916|xapi] Raised at
db_cache_types.ml:75.26-75 -> db_cache_types.ml:118.2-40 ->
pervasiveext.ml:22.2-9
[20091225T08:21:29.170Z|debug|suse11-32bit-53|39 xal_listen|Event thread
updating guest metrics (domid: 28) D:1b6244e4a916|dummytaskhelper] task
destroyed
[20091225T08:21:29.171Z|debug|suse11-32bit-53|39 xal_listen||event] VM (domid:
28) interesting device_event = ChangeUncooperative false
[20091225T08:21:29.172Z|debug|suse11-32bit-53|39 xal_listen||dummytaskhelper]
task VM (domid: 28) device_event = ChangeUncooperative false D:df1da4b2567d
created
[20091225T08:21:29.172Z|debug|suse11-32bit-53|39 xal_listen|VM (domid: 28)
device_event = ChangeUncooperative false D:df1da4b2567d|event] VM
OpaqueRef:997aa428-e61e-21d1-41f0-c63987f59830 is now cooperative
[20091225T08:21:29.172Z|debug|suse11-32bit-53|39 xal_listen|VM (domid: 28)
device_event = ChangeUncooperative false D:df1da4b2567d|dummytaskhelper] task
destroyed
[20091225T08:21:29.172Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] actual shadow value is 5 MiB [multiplier = 1.00];
requested value was 5 MiB [multiplier = 1.00]
[20091225T08:21:29.172Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] creating VCPU devices and attaching to domain
[20091225T08:21:29.172Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] creating VBD devices and attaching to domain
[20091225T08:21:29.172Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] creating VIF devices and attaching to domain
[20091225T08:21:29.172Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] adjusting CPU number against startup-number
[20091225T08:21:29.173Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xapi] creating device emulator
[20091225T08:21:29.173Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] qemu-dm: executing commandline:
/opt/xensource/libexec/closeandexec -- /opt/xensource/libexec/qemu-dm-wrapper 28
/tmp/qemu.28 -d 28 -m 512 -boot dc -serial pty -vcpus 1 -vncunused -k en-us -usb
-usbdevice tablet -acpi
[20091225T08:21:29.175Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] qemu-dm: should be running in the background (stdout and
stderr redirected to /tmp/qemu.28)
[20091225T08:21:29.176Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: watching xenstore paths: [
/local/domain/28/device-misc/dm-ready ] with timeout 1200.000000 seconds
[20091225T08:21:29.176Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: fired on
/squeezed/rpc/response/transfer-reservation-to-domain/73778027-4835-5cb2-8a68-385a3c9b035d
[20091225T08:21:29.176Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: fired on
/squeezed/rpc/response/delete-reservation/66068f5a-b770-e6e5-c737-b90f4ffbccd6
[20091225T08:21:29.176Z|debug|suse11-32bit-53|229 unix-RPC|VM.start
R:851e45a12616|xenops] watch: fired on /local/domain/28/device-misc/dm-ready
[20091225T08:21:30.104Z|debug|suse11-32bit-53|23 monitor|performance monitor
D:59449bdaeb3a|monitor_rrds] Creating fresh RRD for VM
uuid=0f31506d-f796-172d-e6ac-8c31528ae283
[20091225T08:21:30.105Z|debug|suse11-32bit-53|27|monitor_dbcalls
D:31ec8ce40a03|dummytaskhelper] task updating VM_metrics.memory_actual fields
and PIFs D:724faca12f17 created
[20091225T08:21:30.105Z|debug|suse11-32bit-53|27|updating
VM_metrics.memory_actual fields and PIFs D:724faca12f17|dummytaskhelper] task
destroyed
[20091225T08:21:35.105Z|debug|suse11-32bit-53|27|monitor_dbcalls
D:31ec8ce40a03|dummytaskhelper] task updating VM_metrics.memory_actual fields
and PIFs D:53b0d676836a created
[20091225T08:21:35.105Z|debug|suse11-32bit-53|27|updating
VM_metrics.memory_actual fields and PIFs D:53b0d676836a|dummytaskhelper] task
destroyed
[20091225T08:21:45.043Z|debug|suse11-32bit-53|10 db_gc||dummytaskhelper] task DB
GC D:d7486c757c55 created
[20091225T08:21:45.043Z|debug|suse11-32bit-53|10 db_gc|DB GC
D:d7486c757c55|dummytaskhelper] task destroyed
----- Original Message -----
From: Dave Scott
To: ''Huibin QIAN'' ; xen-devel@lists.xensource.com
Cc: w00152566@notesmail.huawei.com
Sent: Tuesday, December 22, 2009 7:02 PM
Subject: RE: [Xen-devel] XAPI source code
Hi,
> Hi All
>
> I have downloaded the opensource xapi source code. I am not sure what the
functins of the follow modules:
> 1 block_device_io
This contains code to store a "redo log" directly on a shared block
device. If this is enabled and the Pool master crashes, none
of the metadata updates will be lost.
> 2 datamodel
This is a combination of an IDL for the XenAPI and a database schema for the
metadata.
> 3 xiu (I am puzzled by the name "xiu")
It originally stood for ''xen in userspace''. It''s a
hypercall simulator-- it allows the toolstack to be run inside a small VM
without talking to a real hypervisor or starting real domains. It allows large
pools to be simulated efficiently without having to nest hypervisors.
> 4 stats
This isn''t very important. We use this to compute simple aggregate
statistics e.g. the length of the ''blackout'' interval during a
live migrate. I''m not sure how useful these numbers really are.
> 5 rpc-light
In xen-api-libs.hg this provides a nice way to autogenerate value
marshalling/unmarshalling code directly from ocaml datatypes (via ocamlp4).
There are currently JSON and XMLRPC ''backends'' and
it''s easy to add new ones.
> 6 rss
An unused module which can generate RSS feeds.
> 7 xb (I think the xapi needs not to talk to xenbus directly)
This is used by the ''xs'' library to talk to xenstore. Note
that xapi doesn''t use libxenstore.
> 8 xsrpc (why it writes some "rpc" keys to path of
"domain/<domid>" in the xenstore?)
This is an old prototype of a xenstore RPC mechanism. In future we''ll
probably add backends to ''rpc-light'' instead of using this
module. That way it''s easier to change the concrete data format (e.g.
to use shared memory or something)
Cheers,
Dave
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel