|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Dom0 kernel panic when porting xen to new arm soc
Hi Julien,
On 6/23/2015 9:56 PM, Peng Fan wrote:
> Hi,
>
> On 6/23/2015 9:36 PM, Julien Grall wrote:
>> Hi,
>>
>> On 23/06/15 14:03, Peng Fan wrote:
>>> I did not enable LPAE for DOM0 kernel, use shor page table.
>>> Following is the full log from uboot to kernel with DOM0 512M:
>>
>> Which CONFIG_VMSPLIT_* do you use? Can you try to use another one? I
>> remembered it had some effect on the offset between physical and virtual
>> address.
> CONFIG_VMSPLIT_2G=y
>
> CONFIG_PAGE_OFFSET=0x80000000
>
> ok. Will try 3G:1G split.
Later I'll reply with log info about this(Do not have log at hand).
Still panic, maybe something wrong with gnutab configration in my side,
I use default gnutab address/size.
Current I met a DomU boot issue, if do not use blk backend, DomU can
boot with ramfs as rootfs. If use an image file as rootfs, DomU can not
boot.
I am not sure why this happends:"
libxl: error: libxl_create.c:1195:domcreate_launch_dm: unable to add
disk devices
libxl: error: libxl_device.c:799:libxl__initiate_device_remove: unable
to get my domid
"
By using gdb, I found domcreate_launch_dm fails to get domid, then it
reports unable to add disk devices. I am not familiar with xenstore and
etc. Did I miss some configuation?
My cfg file:"
kernel = "/home/root/xen/domu.image"
memory = "128"
name = "domU"
vcpus = 1
serial="pty"
disk = [ 'phy:/dev/loop0,xvda,w' ]
extra = "earlyprintk=xenboot console=hvc0 root=/dev/xvda debug=/bin/sh"
"
My init script when Dom0 boots up:
"
mount -t xenfs xenfs /proc/xen
export LD_LIBRARY_PATH=/usr/local/lib
echo "Starting Xenstored"
xenstored -T /root/xenstored.log
echo "Xenstored started"
echo "Starting xenconsoled"
xenconsoled -i &
echo "Xenconsoled started"
echo "Setting up loop0"
losetup /dev/loop0 DomU.image
losetup -a
echo "Writing dom0 name to xenstore"
/usr/local/bin/xenstore-write "/local/domain/0/name" "Domain-0"
echo "Done"
mkdir -p /var/log/xen
"
Detail log when creat DomU:
xen# xl -vvv create -d DomU-test
Parsing config from DomU-test
{
"domid": null,
"config": {
"c_info": {
"type": "pv",
"name": "domU",
"uuid": "67000363-4ae4-41a5-9c1f-293c1b69aa69",
"run_hotplug_scripts": "True"
},
"b_info": {
"max_vcpus": 1,
"avail_vcpus": [
0
],
"max_memkb": 131072,
"target_memkb": 131072,
"shadow_memkb": 2048,
"sched_params": {
},
"claim_mode": "True",
"kernel": "/home/root/xen/domu.image",
"cmdline": "earlyprintk=xenboot console=hvc0 root=/dev/xvda
debug=/bin/sh",
"type.pv": {
}
},
"disks": [
{
"pdev_path": "/dev/loop0",
"vdev": "xvda",
"format": "raw",
"readwrite": 1
}
],
"on_reboot": "restart"
}
}
libxl: debug: libxl_create.c:1544:do_domain_create: ao 0x42eb80: create:
how=(nil) callback=(nil) poller=0x42eb08
libxl: debug: libxl_arm.c:58:libxl__arch_domain_prepare_config:
Configure the domain
libxl: debug: libxl_arm.c:61:libxl__arch_domain_prepare_config: -
Allocate 0 SPIs
libxl: debug: libxl_device.c:269:libxl__device_disk_set_backend: Disk
vdev=xvda spec.backend=unknown
libxl: debug: libxl_device.c:298:libxl__device_disk_set_backend: Disk
vdev=xvda, using backend phy
libxl: debug: libxl_create.c:949:initiate_domain_create: running bootloader
libxl: debug: libxl_bootloader.c:329:libxl__bootloader_run: no
bootloader configured, using user supplied kernel
libxl: debug: libxl_event.c:652:libxl__ev_xswatch_deregister: watch
w=0x42a7cc: deregister unregistered
domainbuilder: detail: xc_dom_allocate: cmdline="earlyprintk=xenboot
console=hvc0 root=/dev/xvda debug=/bin/sh", features="(null)"
libxl: debug: libxl_dom.c:630:libxl__build_pv: pv kernel mapped 0 path
/home/root/xen/domu.image
domainbuilder: detail: xc_dom_kernel_file:
filename="/home/root/xen/domu.image"
domainbuilder: detail: xc_dom_malloc_filemap : 6116 kB
domainbuilder: detail: xc_dom_boot_xen_init: ver 4.6, caps xen-3.0-armv7l
domainbuilder: detail: xc_dom_rambase_init: RAM starts at 40000
domainbuilder: detail: xc_dom_parse_image: called
domainbuilder: detail: xc_dom_find_loader: trying multiboot-binary
loader ...
domainbuilder: detail: loader probe failed
domainbuilder: detail: xc_dom_find_loader: trying Linux zImage (ARM64)
loader ...
domainbuilder: detail: xc_dom_probe_zimage64_kernel: kernel is not an
arm64 Image
domainbuilder: detail: loader probe failed
domainbuilder: detail: xc_dom_find_loader: trying Linux zImage (ARM32)
loader ...
domainbuilder: detail: loader probe OK
domainbuilder: detail: xc_dom_parse_zimage32_kernel: called
domainbuilder: detail: xc_dom_parse_zimage32_kernel: xen-3.0-armv7l:
0x40008000 -> 0x406012f8
libxl: debug: libxl_arm.c:571:libxl__arch_domain_init_hw_description:
constructing DTB for Xen version 4.6 guest
libxl: debug: libxl_arm.c:572:libxl__arch_domain_init_hw_description: -
vGIC version: V2
libxl: debug: libxl_arm.c:333:make_memory_nodes: Creating placeholder
node /memory@40000000
libxl: debug: libxl_arm.c:333:make_memory_nodes: Creating placeholder
node /memory@200000000
libxl: debug: libxl_arm.c:647:libxl__arch_domain_init_hw_description:
fdt total size 1290
domainbuilder: detail: xc_dom_devicetree_mem: called
domainbuilder: detail: xc_dom_mem_init: mem 128 MB, pages 0x8000 pages,
4k each
domainbuilder: detail: xc_dom_mem_init: 0x8000 pages
domainbuilder: detail: xc_dom_boot_mem_init: called
domainbuilder: detail: set_mode: guest xen-3.0-armv7l, address size 32
domainbuilder: detail: xc_dom_malloc : 256 kB
domainbuilder: detail: populate_guest_memory: populating RAM @
0000000040000000-0000000048000000 (128MB)
domainbuilder: detail: populate_one_size: populated 0x40/0x40 entries
with shift 9
domainbuilder: detail: arch_setup_meminit: placing boot modules at
0x47fff000
domainbuilder: detail: arch_setup_meminit: devicetree: 0x47fff000 ->
0x48000000
libxl: debug: libxl_arm.c:678:finalise_one_memory_node: Populating
placeholder node /memory@40000000
libxl: debug: libxl_arm.c:672:finalise_one_memory_node: Nopping out
placeholder node /memory@200000000
domainbuilder: detail: xc_dom_build_image: called
domainbuilder: detail: xc_dom_alloc_segment: kernel : 0x40008000
-> 0x40602000 (pfn 0x40008 + 0x5fa pages)
domainbuilder: detail: xc_dom_pfn_to_ptr_retcount: domU mapping: pfn
0x40008+0x5fa at 0x75e8e000
domainbuilder: detail: xc_dom_load_zimage_kernel: called
domainbuilder: detail: xc_dom_load_zimage_kernel: kernel seg
0x40008000-0x40602000
domainbuilder: detail: xc_dom_load_zimage_kernel: copy 6263544 bytes
from blob 0x764c9000 to dst 0x75e8e000
domainbuilder: detail: xc_dom_alloc_segment: devicetree : 0x47fff000
-> 0x48000000 (pfn 0x47fff + 0x1 pages)
domainbuilder: detail: xc_dom_pfn_to_ptr_retcount: domU mapping: pfn
0x47fff+0x1 at 0x76f13000
domainbuilder: detail: alloc_magic_pages: called
domainbuilder: detail: count_pgtables_arm: called
domainbuilder: detail: xc_dom_build_image : virt_alloc_end : 0x48000000
domainbuilder: detail: xc_dom_build_image : virt_pgtab_end : 0x0
domainbuilder: detail: xc_dom_boot_image: called
domainbuilder: detail: arch_setup_bootearly: doing nothing
domainbuilder: detail: xc_dom_compat_check: supported guest type:
xen-3.0-armv7l <= matches
domainbuilder: detail: setup_pgtables_arm: called
domainbuilder: detail: clear_page: pfn 0x39000, mfn 0x39000
domainbuilder: detail: clear_page: pfn 0x39001, mfn 0x39001
domainbuilder: detail: start_info_arm: called
domainbuilder: detail: domain builder memory footprint
domainbuilder: detail: allocated
domainbuilder: detail: malloc : 293 kB
domainbuilder: detail: anon mmap : 0 bytes
domainbuilder: detail: mapped
domainbuilder: detail: file mmap : 6116 kB
domainbuilder: detail: domU mmap : 6124 kB
domainbuilder: detail: vcpu_arm32: called
domainbuilder: detail: Initial state CPSR 0x1d3 PC 0x40008000
domainbuilder: detail: launch_vm: called, ctxt=0x76f15004
domainbuilder: detail: xc_dom_gnttab_hvm_seed: called, pfn=0x38000
domainbuilder: detail: xc_dom_release: called
libxl: debug: libxl_device.c:269:libxl__device_disk_set_backend: Disk
vdev=xvda spec.backend=phy
libxl: debug: libxl_event.c:600:libxl__ev_xswatch_register: watch
w=0x42f330 wpath=/local/domain/0/backend/vbd/5/51712/state token=3/0:
register slotnum=3
libxl: debug: libxl_create.c:1560:do_domain_create: ao 0x42eb80:
inprogress: poller=0x42eb08, flags=i
libxl: debug: libxl_event.c:537:watchfd_callback: watch w=0x42f330
wpath=/local/domain/0/backend/vbd/5/51712/state token=3/0: event
epath=/local/domain/0/backend/vbd/5/51712/state
libxl: debug: libxl_event.c:841:devstate_watch_callback: backend
/local/domain/0/backend/vbd/5/51712/state wanted state 2 ok
libxl: debug: libxl_event.c:638:libxl__ev_xswatch_deregister: watch
w=0x42f330 wpath=/local/domain/0/backend/vbd/5/51712/state token=3/0:
deregister slotnum=3
libxl: debug: libxl_event.c:652:libxl__ev_xswatch_deregister: watch
w=0x42f330: deregister unregistered
libxl: debug: libxl_event.c:652:libxl__ev_xswatch_deregister: watch
w=0x42f378: deregister unregistered
libxl: error: libxl_create.c:1195:domcreate_launch_dm: unable to add
disk devices
libxl: error: libxl_device.c:799:libxl__initiate_device_remove: unable
to get my domid
libxl: debug: libxl_event.c:652:libxl__ev_xswatch_deregister: watch
w=0x42e548: deregister unregistered
libxl: error: libxl.c:1657:devices_destroy_cb: libxl__devices_destroy
failed for 5
libxl: debug: libxl.c:1701:devices_destroy_cb: forked pid 763 for
destroy of domain 5
libxl: debug: libxl_event.c:1768:libxl__ao_complete: ao 0x42eb80:
complete, rc=-3
libxl: debug: libxl_event.c:1740:libxl__ao__destroy: ao 0x42eb80: destroy
xc: debug: hypercall buffer: total allocations:99 total releases:99
xc: debug: hypercall buffer: current allocations:0 maximum allocations:3
xc: debug: hypercall buffer: cache current size:3
xc: debug: hypercall buffer: cache hits:89 misses:3 toobig:7
>>
>> Regards,
>>
> Thanks,
> Peng.
>
Thanks,
Peng.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |