hi:
I try add vm in zynqmp, but when run rootserve crash.
print See appendix for the log
Function call stack
create_objects
for (int ut_index = 0; ut_index < spec->num_untyped; ut_index++) {
....
CDL_Object *obj = &spec->objects[obj_id];
CDL_ObjectType capdl_obj_type = CDL_Obj_Type(obj); ----case crash
}
I fount when it access 0x440010 (the 42th of capdl_spec.objs, 0~41 objs access is OK) which is (CDL_Object)obj->type will case the crash,
but I access the 42th obj->name ("frame_vm0_group_bin_0132" can be printed) is OK.
[42] = {
#ifdef CONFIG_DEBUG_BUILD
.name = "frame_vm0_group_bin_0132",
#endif
.type = CDL_Frame,
.size_bits = 21,
.frame_extra = { .paddr = 0,
},
},
what may be the problem ? mmu?
Thank you very much.
log:
## Starting application at 0x02793000 ...
ELF-loader started on CPU: ARM Ltd. Cortex-A53 r0p4
paddr=[2793000..481106f]
No DTB passed in from boot loader.
Looking for DTB in CPIO archive...found at 2878d08.
Loaded DTB from 2878d08.
paddr=[239000..23afff]
ELF-loading image 'kernel'
paddr=[0..238fff]
vaddr=[ff8000000000..ff8000238fff]
virt_entry=ff8000000000
ELF-loading image 'capdl-loader'
paddr=[23b000..2393fff]
vaddr=[400000..2558fff]
virt_entry=408af8
ELF loader relocated, continuing boot...
Enabling hypervisor MMU and paging
Jumping to kernel-image entry point...
Warning: gpt_cntfrq 33333000, expected 100000000
Bootstrapping kernel
Booting all finished, dropped to user space
Caught cap fault in send phase at address (nil)
while trying to handle:
vm fault on data at address 0x440010 with status 0x93800007
in thread 0xff887f81b400 "rootserver" at address 0x4026e4
With stack:
0x2553d50: 0x424a9a
0x2553d58: 0x43ffb8
0x2553d60: 0x2553de0
0x2553d68: 0x408a4c
0x2553d70: 0x255a000
0x2553d78: 0x453588
0x2553d80: 0x0
0x2553d88: 0x25
0x2553d90: 0x900000000
0x2553d98: 0x100000000000009
0x2553da0: 0x800000000
0x2553da8: 0x43ffb8
0x2553db0: 0x2186
0x2553db8: 0x21dd
0x2553dc0: 0x2a
0x2553dc8: 0x408a40