AmbiML / sparrow-cantrip-full

Apache License 2.0
7 stars 2 forks source link

Cannot run simulation on real Raspberry pi 3B device #10

Open lopzek opened 1 year ago

lopzek commented 1 year ago

Procedures to reproduce the bug:

  1. set up the environment and run m simulate command. The image run just fine in QEMU.
  2. Copy the elfloader file produced in out/cantrip/aarch64-unknown-elf/release/elfloader to a sd card with u-boot installed.
  3. Using u-boot to load the elfloader by command load mmc 0 0x10000000 elfloaderinto memory
  4. start the OS using command bootelf 0x10000000, and the error occured.
  5. I also tried to load the ext_builtins.cpio file to memory address 0x20000000and started the kernel again. the error were the same.

here's the log:

U-Boot> load mmc 0 0x10000000 elfloader
2334024 bytes read in 101 ms (22 MiB/s)
U-Boot> bootelf 0x10000000
## Starting application at 0x0033c000 ...

ELF-loader started on CPU: ARM Ltd. Cortex-A53 r0p4
  paddr=[33c000..5660ff]
No DTB passed in from boot loader.
Looking for DTB in CPIO archive...found at 37f778.
Loaded DTB from 37f778.
   paddr=[237000..23afff]
ELF-loading image 'kernel' to 0
  paddr=[0..236fff]
  vaddr=[ffffff8000000000..ffffff8000236fff]
  virt_entry=ffffff8000000000
ELF-loading image 'capdl-loader' to 23b000
  paddr=[23b000..33bfff]
  vaddr=[400000..500fff]
  virt_entry=4006a8
Enabling MMU and paging
Jumping to kernel-image entry point...

Bootstrapping kernel
Booting all finished, dropped to user space
cantrip_os_rootserver::Bootinfo: (344, 131072) empty slots 1 nodes (15, 77) untyped 131072 cnode slots
cantrip_os_rootserver::Model: 353 objects 1 irqs 0 untypeds 2 asids
cantrip_os_rootserver::capDL spec: 0.06 Mbytes
cantrip_os_rootserver::CAmkES components: 0.46 Mbytes
cantrip_os_rootserver::Rootserver executable: 0.48 Mbytes
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
cantrip_os_rootserver::Rootserver cnode: 751 used of 10000
cantrip_os_rootserver::Rootserver untypeds: 76 used of 230
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40ad3c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40adb4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
CANTRIP> source -q autostart.repl
CANTRIP> EOF
cantrip_memory_manager::Global memory: 0 allocated 130543360 free, reserved: 2273280 kernel 1359872 user
<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff800213ec00 "" @40585c]: Untyped Retype: Destination cap invalid or read-only.>>
panic::panicked at 'static allocation failed: seL4_FailedLookup', cantrip-memory-manager/src/memory_manager/mod.rs:245:21

I also tried boot by tftp and turn the CONFIG_NOISY_UNTYPEDS feature on in the momory_manager Cargo.toml. Here's the log:

U-Boot> tftp 0x8000 elfloader
lan78xx_eth Waiting for PHY auto negotiation to complete.... done
Using lan78xx_eth device
TFTP from server 192.168.1.102; our IP address is 192.168.1.3
Filename 'elfloader'.
Load address: 0x8000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ################################################################  0 Byt                                                                              es
         713.9 KiB/s
done
Bytes transferred = 2321736 (236d48 hex)
U-Boot> bootelf 0x8000
## Starting application at 0x0033c000 ...

ELF-loader started on CPU: ARM Ltd. Cortex-A53 r0p4
  paddr=[33c000..5630ff]
No DTB passed in from boot loader.
Looking for DTB in CPIO archive...found at 37f778.
Loaded DTB from 37f778.
   paddr=[237000..23afff]
ELF-loading image 'kernel' to 0
  paddr=[0..236fff]
  vaddr=[ffffff8000000000..ffffff8000236fff]
  virt_entry=ffffff8000000000
ELF-loading image 'capdl-loader' to 23b000
  paddr=[23b000..33bfff]
  vaddr=[400000..500fff]
  virt_entry=4006a8
Enabling MMU and paging
Jumping to kernel-image entry point...

Bootstrapping kernel
Booting all finished, dropped to user space
cantrip_os_rootserver::Bootinfo: (344, 131072) empty slots 1 nodes (15, 77) unty                                                                              ped 131072 cnode slots
cantrip_os_rootserver::Model: 353 objects 1 irqs 0 untypeds 2 asids
cantrip_os_rootserver::capDL spec: 0.06 Mbytes
cantrip_os_rootserver::CAmkES components: 0.46 Mbytes
cantrip_os_rootserver::Rootserver executable: 0.48 Mbytes
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410b8c]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address                                                                               space>>
cantrip_os_rootserver::Rootserver cnode: 751 used of 10000
cantrip_os_rootserver::Rootserver untypeds: 76 used of 230
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40ae28]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40aea0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b08c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b128]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
CANTRIP> source -q autostart.repl
CANTRIP> EOF
cantrip_memory_manager::memory_manager::slot 22 seL4_UntypedDesc { paddr: 134217728, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 23 seL4_UntypedDesc { paddr: 268435456, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 24 seL4_UntypedDesc { paddr: 536870912, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 25 seL4_UntypedDesc { paddr: 1073745920, sizeBits: 12, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 26 seL4_UntypedDesc { paddr: 1073750016, sizeBits: 13, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 27 seL4_UntypedDesc { paddr: 1073758208, sizeBits: 14, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 28 seL4_UntypedDesc { paddr: 1073774592, sizeBits: 15, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 29 seL4_UntypedDesc { paddr: 1073807360, sizeBits: 16, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 30 seL4_UntypedDesc { paddr: 1073872896, sizeBits: 17, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 31 seL4_UntypedDesc { paddr: 1074003968, sizeBits: 18, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 32 seL4_UntypedDesc { paddr: 1074266112, sizeBits: 19, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 33 seL4_UntypedDesc { paddr: 1074790400, sizeBits: 20, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 34 seL4_UntypedDesc { paddr: 1075838976, sizeBits: 21, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 35 seL4_UntypedDesc { paddr: 1077936128, sizeBits: 22, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 36 seL4_UntypedDesc { paddr: 1082130432, sizeBits: 23, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 37 seL4_UntypedDesc { paddr: 1090519040, sizeBits: 24, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 38 seL4_UntypedDesc { paddr: 1107296256, sizeBits: 25, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 39 seL4_UntypedDesc { paddr: 1140850688, sizeBits: 26, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 40 seL4_UntypedDesc { paddr: 1207959552, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 41 seL4_UntypedDesc { paddr: 1342177280, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 42 seL4_UntypedDesc { paddr: 1610612736, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 43 seL4_UntypedDesc { paddr: 2147483648, sizeBits: 31, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 44 seL4_UntypedDesc { paddr: 4294967296, sizeBits: 32, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 45 seL4_UntypedDesc { paddr: 8589934592, sizeBits: 33, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 46 seL4_UntypedDesc { paddr: 17179869184, sizeBits: 34, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 47 seL4_UntypedDesc { paddr: 34359738368, sizeBits: 35, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 48 seL4_UntypedDesc { paddr: 68719476736, sizeBits: 36, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 49 seL4_UntypedDesc { paddr: 137438953472, sizeBits: 37, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 50 seL4_UntypedDesc { paddr: 274877906944, sizeBits: 38, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 51 seL4_UntypedDesc { paddr: 549755813888, sizeBits: 39, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 52 seL4_UntypedDesc { paddr: 2338816, sizeBits: 12, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 53 seL4_UntypedDesc { paddr: 2342912, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 54 seL4_UntypedDesc { paddr: 2359296, sizeBits: 18, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 55 seL4_UntypedDesc { paddr: 2621440, sizeBits: 19, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 56 seL4_UntypedDesc { paddr: 3145728, sizeBits: 17, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 57 seL4_UntypedDesc { paddr: 3276800, sizeBits: 16, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 58 seL4_UntypedDesc { paddr: 3342336, sizeBits: 15, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 59 seL4_UntypedDesc { paddr: 3375104, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 60 seL4_UntypedDesc { paddr: 3391488, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 61 seL4_UntypedDesc { paddr: 3407872, sizeBits: 18, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 62 seL4_UntypedDesc { paddr: 3670016, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 63 seL4_UntypedDesc { paddr: 4194304, sizeBits: 22, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 64 seL4_UntypedDesc { paddr: 8388608, sizeBits: 23, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 65 seL4_UntypedDesc { paddr: 16777216, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 66 seL4_UntypedDesc { paddr: 33554432, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 67 seL4_UntypedDesc { paddr: 67108864, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 68 seL4_UntypedDesc { paddr: 100663296, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 69 seL4_UntypedDesc { paddr: 117440512, sizeBits: 23, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 70 seL4_UntypedDesc { paddr: 130064640, sizeBits: 8, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 71 seL4_UntypedDesc { paddr: 130064896, sizeBits: 9, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 72 seL4_UntypedDesc { paddr: 130065408, sizeBits: 10, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 73 seL4_UntypedDesc { paddr: 130066432, sizeBits: 11, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 74 seL4_UntypedDesc { paddr: 130068480, sizeBits: 12, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 75 seL4_UntypedDesc { paddr: 130072576, sizeBits: 14, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 76 seL4_UntypedDesc { paddr: 130088960, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 77 seL4_UntypedDesc { paddr: 130154496, sizeBits: 17, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 78 seL4_UntypedDesc { paddr: 130285568, sizeBits: 18, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 79 seL4_UntypedDesc { paddr: 130547712, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 80 seL4_UntypedDesc { paddr: 131072000, sizeBits: 20, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 81 seL4_UntypedDesc { paddr: 132120576, sizeBits: 21, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 82 seL4_UntypedDesc { paddr: 125829120, sizeBits: 22, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 83 seL4_UntypedDesc { paddr: 0, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::Global memory: 0 allocated 130543360 free, reserved: 2273280 kernel 1359872 user
<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff800213ec00 "" @4059b4]: Untyped Retype: Destination cap invalid or read-only.>>
panic::panicked at 'static allocation failed: seL4_FailedLookup', cantrip-memory-manager/src/memory_manager/mod.rs:245:21
sleffler commented 1 year ago

It is likely your board config differs from the "rpi3" config; you want to find where it differs and modify the existing config or add something specific for your hw. I assume you've tried booting stock seL4 already?

Otherwise, check the kernel's memory config; e.g. in the build area:

cat kernel/gen_headers/plat/machine/platform_gen.yaml devices:

and enable startup debugging in the MemoryManger component to see what memory is being handed off:

@.***:~/shodan/cantrip/projects/cantrip/apps/system/components/MemoryManager/cantrip-memory-manager$ git diff diff --git a/apps/system/components/MemoryManager/cantrip-memory-manager/Cargo.toml b/apps/system/components/MemoryManager/cantrip-memory-manager/Cargo.toml index 6e274ca..536977e 100644 --- a/apps/system/components/MemoryManager/cantrip-memory-manager/Cargo.toml +++ b/apps/system/components/MemoryManager/cantrip-memory-manager/Cargo.toml @@ -5,7 +5,7 @@ description = "Cantrip OS MemoryManager service" edition = "2021"

[features] -default = [] +default = ["CONFIG_NOISY_UNTYPEDS"]

Log UntypedMemory slabs at startup.

CONFIG_NOISY_UNTYPEDS = []

Remove the default cmds from $ROOTDIR/build/platforms/rpi3/autostart.repl in case something in there is triggering the problem.

If you still panic before you get to a "shell prompt" try turning on debugging in the rootserver to see how it's setting up memory; e.g.

@.***:~/shodan/cantrip/projects/capdl/cantrip-os-rootserver$ git diff diff --git a/cantrip-os-rootserver/Cargo.toml b/cantrip-os-rootserver/Cargo.toml index 1c55d25..24e4bbb 100644 --- a/cantrip-os-rootserver/Cargo.toml +++ b/cantrip-os-rootserver/Cargo.toml @@ -23,7 +23,7 @@ build = "build.rs" sel4-config = { path = "../../cantrip/apps/system/components/cantrip-os-common/src/sel4-config" }

[features] -default = [] +default = ["LOG_TRACE"] CONFIG_PLAT_BCM2837 = [] CONFIG_PLAT_SHODAN = []

Used by sel4-config to extract kernel config

On Mon, May 22, 2023 at 5:29 PM lopzek @.***> wrote:

Procedures to reproduce the bug:

  1. set up the environment and run m simulate command. The image run just fine in QEMU.
  2. Copy the elfloader file produced in out/cantrip/aarch64-unknown-elf/release/elfloader to a sd card with u-boot installed.
  3. Using u-boot to load the elfloader by command load mmc 0 0x10000000 elfloaderinto memory
  4. start the OS using command bootelf 0x10000000, and the error occured.
  5. I also tried to load the ext_builtins.cpio file to memory address 0x20000000 and started the kernel again. the error were the same.

here's the log:

U-Boot> load mmc 0 0x10000000 elfloader 2334024 bytes read in 101 ms (22 MiB/s) U-Boot> bootelf 0x10000000## Starting application at 0x0033c000 ...

ELF-loader started on CPU: ARM Ltd. Cortex-A53 r0p4 paddr=[33c000..5660ff] No DTB passed in from boot loader. Looking for DTB in CPIO archive...found at 37f778. Loaded DTB from 37f778. paddr=[237000..23afff] ELF-loading image 'kernel' to 0 paddr=[0..236fff] vaddr=[ffffff8000000000..ffffff8000236fff] virt_entry=ffffff8000000000 ELF-loading image 'capdl-loader' to 23b000 paddr=[23b000..33bfff] vaddr=[400000..500fff] virt_entry=4006a8 Enabling MMU and paging Jumping to kernel-image entry point...

Bootstrapping kernel Booting all finished, dropped to user space cantrip_os_rootserver::Bootinfo: (344, 131072) empty slots 1 nodes (15, 77) untyped 131072 cnode slots cantrip_os_rootserver::Model: 353 objects 1 irqs 0 untypeds 2 asids cantrip_os_rootserver::capDL spec: 0.06 Mbytes cantrip_os_rootserver::CAmkES components: 0.46 Mbytes cantrip_os_rootserver::Rootserver executable: 0.48 Mbytes<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>><<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000341400 "" @410aac]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>cantrip_os_rootserver::Rootserver cnode: 751 used of 10000cantrip_os_rootserver::Rootserver untypeds: 76 used of 230<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40ad3c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40adb4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40afa0]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000341400 "" @40b03c]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>CANTRIP> source -q autostart.replCANTRIP> EOFcantrip_memory_manager::Global memory: 0 allocated 130543360 free, reserved: 2273280 kernel 1359872 user<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff800213ec00 "" @40585c]: Untyped Retype: Destination cap invalid or read-only.>>panic::panicked at 'static allocation failed: seL4_FailedLookup', cantrip-memory-manager/src/memory_manager/mod.rs:245:21

— Reply to this email directly, view it on GitHub https://github.com/AmbiML/sparrow-cantrip-full/issues/10, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRM7IO74KLLZLNPY5APOK3XHQAGXANCNFSM6AAAAAAYLD2R5Q . You are receiving this because you are subscribed to this thread.Message ID: @.***>

lopzek commented 1 year ago

I tried a few things but didn't solve the issue. Here's a list of what I did: 1, I checked the board config. The configs were all right. Besides, I can load and run sel4test images successfully with the same config. So the config should be fine. 2, I removed all contents in $ROOTDIR/build/platforms/rpi3/autostart.repl. That didn't solve the issue. Cantrip paniced before I got in the shell prompt. 3, I added debug info to the log but couldn't located where went wrong. Here are the logs:

U-Boot> bootelf 10000000
## Starting application at 0x0081b000 ...

ELF-loader started on CPU: ARM Ltd. Cortex-A53 r0p4
  paddr=[81b000..127a0ff]
No DTB passed in from boot loader.
Looking for DTB in CPIO archive...found at 944eb8.
Loaded DTB from 944eb8.
   paddr=[246000..249fff]
ELF-loading image 'kernel' to 0
  paddr=[0..245fff]
  vaddr=[ffffff8000000000..ffffff8000245fff]
  virt_entry=ffffff8000000000
ELF-loading image 'capdl-loader' to 24a000
  paddr=[24a000..81afff]
  vaddr=[400000..9d0fff]
  virt_entry=400a38
Enabling MMU and paging
Jumping to kernel-image entry point...

Bootstrapping kernel
Booting all finished, dropped to user space
cantrip_os_rootserver:setup heap: start_addr 0x9941f0 size 4096
cantrip_os_rootserver:Bootinfo: (1584, 131072) empty slots 1 nodes (15, 83) untyped 131072 cnode slots
cantrip_os_rootserver:Model: 1342 objects 1 irqs 0 untypeds 2 asids
cantrip_os_rootserver:capDL spec: 0.29 Mbytes
cantrip_os_rootserver:CAmkES components: 4.51 Mbytes
cantrip_os_rootserver:Rootserver executable: 1.01 Mbytes
model:Rootserver is running in domain 0
model:Create objects...
model::loader_alloc:Create ASID pool process_manager_asid_pool asid_slot=2942 asid_ut=0xafd
model:Assign ASIDPool 1619 for debug_console_group_bin_pd
model:Assign ASIDPool 2796 for memory_manager_group_bin_pd
model:Assign ASIDPool 2817 for process_manager_group_bin_pd
model:Assign ASIDPool 2830 for sdk_runtime_group_bin_pd
model:Assign ASIDPool 2833 for security_coordinator_group_bin_pd
model:Initialize page frames...
model:switch filedata fill to
model:switch filedata fill to debug_console_group_bin
model:switch filedata fill to memory_manager_group_bin
model:switch filedata fill to process_manager_group_bin
model:switch filedata fill to sdk_runtime_group_bin
model:Initialize VSpaces...
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_memory_1_data_0_obj@0x4de000; dup'ing
model:dup: obj CDL_Frame obj_id 1201 old 2801 new 2943 overflow 2944
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_logger_2_data_0_obj@0x4e2000; dup'ing
model:dup: obj CDL_Frame obj_id 1198 old 2798 new 2945 overflow 2946
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page shell_package_1_data_0_obj@0x52a000; dup'ing
model:dup: obj CDL_Frame obj_id 1234 old 2834 new 2947 overflow 2948
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_logger_1_data_0_obj@0x52b000; dup'ing
model:dup: obj CDL_Frame obj_id 1197 old 2797 new 2949 overflow 2950
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_memory_2_data_0_obj@0x52c000; dup'ing
model:dup: obj CDL_Frame obj_id 1202 old 2802 new 2951 overflow 2952
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_logger_4_data_0_obj@0x4eb000; dup'ing
model:dup: obj CDL_Frame obj_id 1200 old 2800 new 2953 overflow 2954
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_memory_4_data_0_obj@0x4ec000; dup'ing
model:dup: obj CDL_Frame obj_id 1204 old 2804 new 2955 overflow 2956
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_security_1_data_0_obj@0x4f4000; dup'ing
model:dup: obj CDL_Frame obj_id 1205 old 2805 new 2957 overflow 2958
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_security_2_data_0_obj@0x4f5000; dup'ing
model:dup: obj CDL_Frame obj_id 1206 old 2806 new 2959 overflow 2960
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_security_3_data_0_obj@0x4f6000; dup'ing
model:dup: obj CDL_Frame obj_id 1207 old 2807 new 2961 overflow 2962
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_logger_3_data_0_obj@0x4f7000; dup'ing
model:dup: obj CDL_Frame obj_id 1199 old 2799 new 2963 overflow 2964
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_memory_3_data_0_obj@0x4f8000; dup'ing
model:dup: obj CDL_Frame obj_id 1203 old 2803 new 2965 overflow 2966
model:Initialize TCBs...
model::scheduler:TCB debug_console_debug_console_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB debug_console_debug_console_0_control_tcb has no fault endpoint
model::scheduler:TCB debug_console_debug_console_logger_0000_tcb has no temporal fault endpoint
model::scheduler:TCB debug_console_debug_console_logger_0000_tcb has no fault endpoint
model::scheduler:TCB memory_manager_memory_manager_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB memory_manager_memory_manager_0_control_tcb has no fault endpoint
model::scheduler:TCB memory_manager_memory_manager_memory_0000_tcb has no temporal fault endpoint
model::scheduler:TCB memory_manager_memory_manager_memory_0000_tcb has no fault endpoint
model::scheduler:TCB process_manager_process_manager_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB process_manager_process_manager_0_control_tcb has no fault endpoint
model::scheduler:TCB process_manager_process_manager_pkg_mgmt_0000_tcb has no temporal fault endpoint
model::scheduler:TCB process_manager_process_manager_pkg_mgmt_0000_tcb has no fault endpoint
model::scheduler:TCB process_manager_process_manager_proc_ctrl_0000_tcb has no temporal fault endpoint
model::scheduler:TCB process_manager_process_manager_proc_ctrl_0000_tcb has no fault endpoint
model::scheduler:TCB sdk_runtime_sdk_runtime_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB sdk_runtime_sdk_runtime_0_control_tcb has no fault endpoint
model::scheduler:TCB sdk_runtime_sdk_runtime_sdk_manager_0000_tcb has no temporal fault endpoint
model::scheduler:TCB sdk_runtime_sdk_runtime_sdk_manager_0000_tcb has no fault endpoint
model::scheduler:TCB security_coordinator_security_coordinator_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB security_coordinator_security_coordinator_0_control_tcb has no fault endpoint
model::scheduler:TCB security_coordinator_security_coordinator_security_0000_tcb has no temporal fault endpoint
model::scheduler:TCB security_coordinator_security_coordinator_security_0000_tcb has no fault endpoint
model:Initialize CSpaces...
cantrip_os_rootserver:Rootserver cnode: 2967 used of 10000
cantrip_os_rootserver:Rootserver untypeds: 82 used of 230
model:Create holding cnode for 1389 caps, depth 11
model:Hand-off 68 untypeds from src slot 15 to dest slot 15
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
model:Starting threads...
CANTRIP> source -q autostart.repl
cantrip_memory_manager::memory_manager::slot 15 seL4_UntypedDesc { paddr: 134217728, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 16 seL4_UntypedDesc { paddr: 268435456, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 17 seL4_UntypedDesc { paddr: 536870912, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }
CANTRIP> EOFcantrip_memory_manager::memory_m
anager::slot 18 seL4_UntypedDesc { paddr: 1073745920, sizeBits: 12, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 19 seL4_UntypedDesc { paddr: 1073750016, sizeBits: 13, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 20 seL4_UntypedDesc { paddr: 1073758208, sizeBits: 14, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 21 seL4_UntypedDesc { paddr: 1073774592, sizeBits: 15, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 22 seL4_UntypedDesc { paddr: 1073807360, sizeBits: 16, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 23 seL4_UntypedDesc { paddr: 1073872896, sizeBits: 17, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 24 seL4_UntypedDesc { paddr: 1074003968, sizeBits: 18, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 25 seL4_UntypedDesc { paddr: 1074266112, sizeBits: 19, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 26 seL4_UntypedDesc { paddr: 1074790400, sizeBits: 20, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 27 seL4_UntypedDesc { paddr: 1075838976, sizeBits: 21, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 28 seL4_UntypedDesc { paddr: 1077936128, sizeBits: 22, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 29 seL4_UntypedDesc { paddr: 1082130432, sizeBits: 23, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 30 seL4_UntypedDesc { paddr: 1090519040, sizeBits: 24, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 31 seL4_UntypedDesc { paddr: 1107296256, sizeBits: 25, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 32 seL4_UntypedDesc { paddr: 1140850688, sizeBits: 26, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 33 seL4_UntypedDesc { paddr: 1207959552, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 34 seL4_UntypedDesc { paddr: 1342177280, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 35 seL4_UntypedDesc { paddr: 1610612736, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 36 seL4_UntypedDesc { paddr: 2147483648, sizeBits: 31, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 37 seL4_UntypedDesc { paddr: 4294967296, sizeBits: 32, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 38 seL4_UntypedDesc { paddr: 8589934592, sizeBits: 33, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 39 seL4_UntypedDesc { paddr: 17179869184, sizeBits: 34, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 40 seL4_UntypedDesc { paddr: 34359738368, sizeBits: 35, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 41 seL4_UntypedDesc { paddr: 68719476736, sizeBits: 36, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 42 seL4_UntypedDesc { paddr: 137438953472, sizeBits: 37, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 43 seL4_UntypedDesc { paddr: 274877906944, sizeBits: 38, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 44 seL4_UntypedDesc { paddr: 549755813888, sizeBits: 39, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 45 seL4_UntypedDesc { paddr: 2400256, sizeBits: 13, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 46 seL4_UntypedDesc { paddr: 2408448, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 47 seL4_UntypedDesc { paddr: 2424832, sizeBits: 16, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 48 seL4_UntypedDesc { paddr: 2490368, sizeBits: 17, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 49 seL4_UntypedDesc { paddr: 2621440, sizeBits: 19, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 50 seL4_UntypedDesc { paddr: 3145728, sizeBits: 20, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 51 seL4_UntypedDesc { paddr: 4194304, sizeBits: 22, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 52 seL4_UntypedDesc { paddr: 8388608, sizeBits: 16, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 53 seL4_UntypedDesc { paddr: 8454144, sizeBits: 15, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 54 seL4_UntypedDesc { paddr: 8486912, sizeBits: 13, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 55 seL4_UntypedDesc { paddr: 8495104, sizeBits: 12, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 56 seL4_UntypedDesc { paddr: 8499200, sizeBits: 12, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 57 seL4_UntypedDesc { paddr: 8503296, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 58 seL4_UntypedDesc { paddr: 8519680, sizeBits: 17, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 59 seL4_UntypedDesc { paddr: 8650752, sizeBits: 18, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 60 seL4_UntypedDesc { paddr: 8912896, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 61 seL4_UntypedDesc { paddr: 9437184, sizeBits: 20, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 62 seL4_UntypedDesc { paddr: 10485760, sizeBits: 21, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 63 seL4_UntypedDesc { paddr: 12582912, sizeBits: 22, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 64 seL4_UntypedDesc { paddr: 16777216, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 65 seL4_UntypedDesc { paddr: 33554432, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 66 seL4_UntypedDesc { paddr: 67108864, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 67 seL4_UntypedDesc { paddr: 100663296, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 68 seL4_UntypedDesc { paddr: 117440512, sizeBits: 23, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 69 seL4_UntypedDesc { paddr: 130064640, sizeBits: 8, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 70 seL4_UntypedDesc { paddr: 130064896, sizeBits: 9, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 71 seL4_UntypedDesc { paddr: 130065408, sizeBits: 10, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 72 seL4_UntypedDesc { paddr: 130066432, sizeBits: 11, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 73 seL4_UntypedDesc { paddr: 130068480, sizeBits: 12, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 74 seL4_UntypedDesc { paddr: 130072576, sizeBits: 14, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 75 seL4_UntypedDesc { paddr: 130088960, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 76 seL4_UntypedDesc { paddr: 130154496, sizeBits: 17, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 77 seL4_UntypedDesc { paddr: 130285568, sizeBits: 18, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 78 seL4_UntypedDesc { paddr: 130547712, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 79 seL4_UntypedDesc { paddr: 131072000, sizeBits: 20, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 80 seL4_UntypedDesc { paddr: 132120576, sizeBits: 21, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 81 seL4_UntypedDesc { paddr: 125829120, sizeBits: 22, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::slot 82 seL4_UntypedDesc { paddr: 0, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::Global memory: 0 allocated 126336768 free, reserved: 2334720 kernel 5505024 user
<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff8002527c00 "memory_manager_memory_manager_memory_0000_tcb" @48e7cc]: Untyped Retype: Destination cap invalid or read-only.>>
panic::panicked at 'static allocation failed: seL4_FailedLookup', cantrip-memory-manager/src/memory_manager/mod.rs:245:21
sleffler commented 1 year ago

This looks like you've booted to a running system but the first memory allocation request failed. The first request is marked to come out of a "static slab" because the allocated object is going to live the duration of the system. Static allocations are treated specially because they otherwise fragment memory. If you look in MemoryManager::new() you'll see how the static slabs are setup. I cannot tell from the log msgs what's happening but you might just force a regular slab to be assigned for static allocations. If that works then we need to identify why the slab that was chosen was unsuitable. Unfortunately the CONFIG_NOISY_UNTYPEDS feature you turned on to get the log msgs doesn't show everything to understand what's happening; maybe add a "log::info!" call to dump the result of untyped_describe ( https://github.com/AmbiML/sparrow-cantrip-full/blob/main/apps/system/components/MemoryManager/cantrip-memory-manager/src/memory_manager/mod.rs#L144 )?

On Wed, Jun 7, 2023 at 10:13 PM lopzek @.***> wrote:

I tried a few things but didn't solve the issue. Here's a list of what I did: 1, I checked the board config. The configs were all right. Besides, I can load and run sel4test images successfully with the same config. So the config should be fine. 2, I removed all contents in $ROOTDIR/build/platforms/rpi3/autostart.repl . That didn't solve the issue. Cantrip paniced before I got in the shell prompt. 3, I added debug info to the log but couldn't located where went wrong. Here are the logs:

U-Boot> bootelf 10000000## Starting application at 0x0081b000 ...

ELF-loader started on CPU: ARM Ltd. Cortex-A53 r0p4 paddr=[81b000..127a0ff] No DTB passed in from boot loader. Looking for DTB in CPIO archive...found at 944eb8. Loaded DTB from 944eb8. paddr=[246000..249fff] ELF-loading image 'kernel' to 0 paddr=[0..245fff] vaddr=[ffffff8000000000..ffffff8000245fff] virt_entry=ffffff8000000000 ELF-loading image 'capdl-loader' to 24a000 paddr=[24a000..81afff] vaddr=[400000..9d0fff] virt_entry=400a38 Enabling MMU and paging Jumping to kernel-image entry point...

Bootstrapping kernel Booting all finished, dropped to user space cantrip_os_rootserver:setup heap: start_addr 0x9941f0 size 4096 cantrip_os_rootserver:Bootinfo: (1584, 131072) empty slots 1 nodes (15, 83) untyped 131072 cnode slots cantrip_os_rootserver:Model: 1342 objects 1 irqs 0 untypeds 2 asids cantrip_os_rootserver:capDL spec: 0.29 Mbytes cantrip_os_rootserver:CAmkES components: 4.51 Mbytes cantrip_os_rootserver:Rootserver executable: 1.01 Mbytes model:Rootserver is running in domain 0 model:Create objects... model::loader_alloc:Create ASID pool process_manager_asid_pool asid_slot=2942 asid_ut=0xafd model:Assign ASIDPool 1619 for debug_console_group_bin_pd model:Assign ASIDPool 2796 for memory_manager_group_bin_pd model:Assign ASIDPool 2817 for process_manager_group_bin_pd model:Assign ASIDPool 2830 for sdk_runtime_group_bin_pd model:Assign ASIDPool 2833 for security_coordinator_group_bin_pd model:Initialize page frames... model:switch filedata fill to model:switch filedata fill to debug_console_group_bin model:switch filedata fill to memory_manager_group_bin model:switch filedata fill to process_manager_group_bin model:switch filedata fill to sdk_runtime_group_bin model:Initialize VSpaces...<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1201 old 2801 new 2943 overflow 2944<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1198 old 2798 new 2945 overflow 2946<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1234 old 2834 new 2947 overflow 2948<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1197 old 2797 new 2949 overflow 2950<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1202 old 2802 new 2951 overflow 2952<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1200 old 2800 new 2953 overflow 2954<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1204 old 2804 new 2955 overflow 2956<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1205 old 2805 new 2957 overflow 2958<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1206 old 2806 new 2959 overflow 2960<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1207 old 2807 new 2961 overflow 2962<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1199 old 2799 new 2963 overflow 2964<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @43c658]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1203 old 2803 new 2965 overflow 2966model:Initialize TCBs...model::scheduler:TCB debug_console_debug_console_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB debug_console_debug_console_0_control_tcb has no fault endpointmodel::scheduler:TCB debug_console_debug_console_logger_0000_tcb has no temporal fault endpointmodel::scheduler:TCB debug_console_debug_console_logger_0000_tcb has no fault endpointmodel::scheduler:TCB memory_manager_memory_manager_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB memory_manager_memory_manager_0_control_tcb has no fault endpointmodel::scheduler:TCB memory_manager_memory_manager_memory_0000_tcb has no temporal fault endpointmodel::scheduler:TCB memory_manager_memory_manager_memory_0000_tcb has no fault endpointmodel::scheduler:TCB process_manager_process_manager_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB process_manager_process_manager_0_control_tcb has no fault endpointmodel::scheduler:TCB process_manager_process_manager_pkg_mgmt_0000_tcb has no temporal fault endpointmodel::scheduler:TCB process_manager_process_manager_pkg_mgmt_0000_tcb has no fault endpointmodel::scheduler:TCB process_manager_process_manager_proc_ctrl_0000_tcb has no temporal fault endpointmodel::scheduler:TCB process_manager_process_manager_proc_ctrl_0000_tcb has no fault endpointmodel::scheduler:TCB sdk_runtime_sdk_runtime_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB sdk_runtime_sdk_runtime_0_control_tcb has no fault endpointmodel::scheduler:TCB sdk_runtime_sdk_runtime_sdk_manager_0000_tcb has no temporal fault endpointmodel::scheduler:TCB sdk_runtime_sdk_runtime_sdk_manager_0000_tcb has no fault endpointmodel::scheduler:TCB security_coordinator_security_coordinator_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB security_coordinator_security_coordinator_0_control_tcb has no fault endpointmodel::scheduler:TCB security_coordinator_security_coordinator_security_0000_tcb has no temporal fault endpointmodel::scheduler:TCB security_coordinator_security_coordinator_security_0000_tcb has no fault endpointmodel:Initialize CSpaces...cantrip_os_rootserver:Rootserver cnode: 2967 used of 10000cantrip_os_rootserver:Rootserver untypeds: 82 used of 230model:Create holding cnode for 1389 caps, depth 11model:Hand-off 68 untypeds from src slot 15 to dest slot 15<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @47f6a4]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>model:Starting threads...CANTRIP> source -q autostart.replcantrip_memory_manager::memory_manager::slot 15 seL4_UntypedDesc { paddr: 134217728, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 16 seL4_UntypedDesc { paddr: 268435456, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 17 seL4_UntypedDesc { paddr: 536870912, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }CANTRIP> EOFcantrip_memory_manager::memory_manager::slot 18 seL4_UntypedDesc { paddr: 1073745920, sizeBits: 12, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 19 seL4_UntypedDesc { paddr: 1073750016, sizeBits: 13, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 20 seL4_UntypedDesc { paddr: 1073758208, sizeBits: 14, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 21 seL4_UntypedDesc { paddr: 1073774592, sizeBits: 15, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 22 seL4_UntypedDesc { paddr: 1073807360, sizeBits: 16, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 23 seL4_UntypedDesc { paddr: 1073872896, sizeBits: 17, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 24 seL4_UntypedDesc { paddr: 1074003968, sizeBits: 18, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 25 seL4_UntypedDesc { paddr: 1074266112, sizeBits: 19, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 26 seL4_UntypedDesc { paddr: 1074790400, sizeBits: 20, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 27 seL4_UntypedDesc { paddr: 1075838976, sizeBits: 21, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 28 seL4_UntypedDesc { paddr: 1077936128, sizeBits: 22, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 29 seL4_UntypedDesc { paddr: 1082130432, sizeBits: 23, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 30 seL4_UntypedDesc { paddr: 1090519040, sizeBits: 24, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 31 seL4_UntypedDesc { paddr: 1107296256, sizeBits: 25, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 32 seL4_UntypedDesc { paddr: 1140850688, sizeBits: 26, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 33 seL4_UntypedDesc { paddr: 1207959552, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 34 seL4_UntypedDesc { paddr: 1342177280, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 35 seL4_UntypedDesc { paddr: 1610612736, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 36 seL4_UntypedDesc { paddr: 2147483648 <(214)%20748-3648>, sizeBits: 31, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 37 seL4_UntypedDesc { paddr: 4294967296, sizeBits: 32, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 38 seL4_UntypedDesc { paddr: 8589934592 <(858)%20993-4592>, sizeBits: 33, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 39 seL4_UntypedDesc { paddr: 17179869184 <(717)%20986-9184>, sizeBits: 34, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 40 seL4_UntypedDesc { paddr: 34359738368, sizeBits: 35, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 41 seL4_UntypedDesc { paddr: 68719476736, sizeBits: 36, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 42 seL4_UntypedDesc { paddr: 137438953472, sizeBits: 37, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 43 seL4_UntypedDesc { paddr: 274877906944, sizeBits: 38, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 44 seL4_UntypedDesc { paddr: 549755813888, sizeBits: 39, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 45 seL4_UntypedDesc { paddr: 2400256, sizeBits: 13, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 46 seL4_UntypedDesc { paddr: 2408448, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 47 seL4_UntypedDesc { paddr: 2424832, sizeBits: 16, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 48 seL4_UntypedDesc { paddr: 2490368, sizeBits: 17, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 49 seL4_UntypedDesc { paddr: 2621440, sizeBits: 19, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 50 seL4_UntypedDesc { paddr: 3145728, sizeBits: 20, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 51 seL4_UntypedDesc { paddr: 4194304, sizeBits: 22, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 52 seL4_UntypedDesc { paddr: 8388608, sizeBits: 16, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 53 seL4_UntypedDesc { paddr: 8454144, sizeBits: 15, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 54 seL4_UntypedDesc { paddr: 8486912, sizeBits: 13, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 55 seL4_UntypedDesc { paddr: 8495104, sizeBits: 12, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 56 seL4_UntypedDesc { paddr: 8499200, sizeBits: 12, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 57 seL4_UntypedDesc { paddr: 8503296, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 58 seL4_UntypedDesc { paddr: 8519680, sizeBits: 17, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 59 seL4_UntypedDesc { paddr: 8650752, sizeBits: 18, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 60 seL4_UntypedDesc { paddr: 8912896, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 61 seL4_UntypedDesc { paddr: 9437184, sizeBits: 20, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 62 seL4_UntypedDesc { paddr: 10485760, sizeBits: 21, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 63 seL4_UntypedDesc { paddr: 12582912, sizeBits: 22, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 64 seL4_UntypedDesc { paddr: 16777216, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 65 seL4_UntypedDesc { paddr: 33554432, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 66 seL4_UntypedDesc { paddr: 67108864, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 67 seL4_UntypedDesc { paddr: 100663296, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 68 seL4_UntypedDesc { paddr: 117440512, sizeBits: 23, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 69 seL4_UntypedDesc { paddr: 130064640, sizeBits: 8, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 70 seL4_UntypedDesc { paddr: 130064896, sizeBits: 9, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 71 seL4_UntypedDesc { paddr: 130065408, sizeBits: 10, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 72 seL4_UntypedDesc { paddr: 130066432, sizeBits: 11, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 73 seL4_UntypedDesc { paddr: 130068480, sizeBits: 12, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 74 seL4_UntypedDesc { paddr: 130072576, sizeBits: 14, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 75 seL4_UntypedDesc { paddr: 130088960, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 76 seL4_UntypedDesc { paddr: 130154496, sizeBits: 17, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 77 seL4_UntypedDesc { paddr: 130285568, sizeBits: 18, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 78 seL4_UntypedDesc { paddr: 130547712, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 79 seL4_UntypedDesc { paddr: 131072000, sizeBits: 20, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 80 seL4_UntypedDesc { paddr: 132120576, sizeBits: 21, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 81 seL4_UntypedDesc { paddr: 125829120, sizeBits: 22, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::slot 82 seL4_UntypedDesc { paddr: 0, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::Global memory: 0 allocated 126336768 free, reserved: 2334720 kernel 5505024 user<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff8002527c00 "memory_manager_memory_manager_memory_0000_tcb" @48e7cc]: Untyped Retype: Destination cap invalid or read-only.>>panic::panicked at 'static allocation failed: seL4_FailedLookup', cantrip-memory-manager/src/memory_manager/mod.rs:245:21

— Reply to this email directly, view it on GitHub https://github.com/AmbiML/sparrow-cantrip-full/issues/10#issuecomment-1581902548, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRM7IOTO7QHMBY5OXLDEJ3XKFNQBANCNFSM6AAAAAAYLD2R5Q . You are receiving this because you commented.Message ID: @.***>

lopzek commented 1 year ago

Added more logs and I got more info as follows

U-Boot> bootelf 10000000
## Starting application at 0x0081b000 ...

ELF-loader started on CPU: ARM Ltd. Cortex-A53 r0p4
  paddr=[81b000..127a0ff]
No DTB passed in from boot loader.
Looking for DTB in CPIO archive...found at 944eb8.
Loaded DTB from 944eb8.
   paddr=[246000..249fff]
ELF-loading image 'kernel' to 0
  paddr=[0..245fff]
  vaddr=[ffffff8000000000..ffffff8000245fff]
  virt_entry=ffffff8000000000
ELF-loading image 'capdl-loader' to 24a000
  paddr=[24a000..81afff]
  vaddr=[400000..9d0fff]
  virt_entry=400a38
Enabling MMU and paging
Jumping to kernel-image entry point...

Bootstrapping kernel
Booting all finished, dropped to user space
cantrip_os_rootserver:setup heap: start_addr 0x9941f0 size 4096
cantrip_os_rootserver:Bootinfo: (1584, 131072) empty slots 1 nodes (15, 83) untyped 131072 cnode slots
cantrip_os_rootserver:Model: 1342 objects 1 irqs 0 untypeds 2 asids
cantrip_os_rootserver:capDL spec: 0.29 Mbytes
cantrip_os_rootserver:CAmkES components: 4.51 Mbytes
cantrip_os_rootserver:Rootserver executable: 1.01 Mbytes
model:Rootserver is running in domain 0
model:Create objects...
model::loader_alloc:Create ASID pool process_manager_asid_pool asid_slot=2942 asid_ut=0xafd
model:Assign ASIDPool 1619 for debug_console_group_bin_pd
model:Assign ASIDPool 2796 for memory_manager_group_bin_pd
model:Assign ASIDPool 2817 for process_manager_group_bin_pd
model:Assign ASIDPool 2830 for sdk_runtime_group_bin_pd
model:Assign ASIDPool 2833 for security_coordinator_group_bin_pd
model:Initialize page frames...
model:switch filedata fill to
model:switch filedata fill to debug_console_group_bin
model:switch filedata fill to memory_manager_group_bin
model:switch filedata fill to process_manager_group_bin
model:switch filedata fill to sdk_runtime_group_bin
model:Initialize VSpaces...
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_memory_1_data_0_obj@0x4de000; dup'ing
model:dup: obj CDL_Frame obj_id 1201 old 2801 new 2943 overflow 2944
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_logger_2_data_0_obj@0x4e2000; dup'ing
model:dup: obj CDL_Frame obj_id 1198 old 2798 new 2945 overflow 2946
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page shell_package_1_data_0_obj@0x52a000; dup'ing
model:dup: obj CDL_Frame obj_id 1234 old 2834 new 2947 overflow 2948
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_logger_1_data_0_obj@0x52b000; dup'ing
model:dup: obj CDL_Frame obj_id 1197 old 2797 new 2949 overflow 2950
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_memory_2_data_0_obj@0x52c000; dup'ing
model:dup: obj CDL_Frame obj_id 1202 old 2802 new 2951 overflow 2952
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_logger_4_data_0_obj@0x4eb000; dup'ing
model:dup: obj CDL_Frame obj_id 1200 old 2800 new 2953 overflow 2954
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_memory_4_data_0_obj@0x4ec000; dup'ing
model:dup: obj CDL_Frame obj_id 1204 old 2804 new 2955 overflow 2956
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_security_1_data_0_obj@0x4f4000; dup'ing
model:dup: obj CDL_Frame obj_id 1205 old 2805 new 2957 overflow 2958
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_security_2_data_0_obj@0x4f5000; dup'ing
model:dup: obj CDL_Frame obj_id 1206 old 2806 new 2959 overflow 2960
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_security_3_data_0_obj@0x4f6000; dup'ing
model:dup: obj CDL_Frame obj_id 1207 old 2807 new 2961 overflow 2962
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_logger_3_data_0_obj@0x4f7000; dup'ing
model:dup: obj CDL_Frame obj_id 1199 old 2799 new 2963 overflow 2964
<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>
model:Shared page multi_memory_3_data_0_obj@0x4f8000; dup'ing
model:dup: obj CDL_Frame obj_id 1203 old 2803 new 2965 overflow 2966
model:Initialize TCBs...
model::scheduler:TCB debug_console_debug_console_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB debug_console_debug_console_0_control_tcb has no fault endpoint
model::scheduler:TCB debug_console_debug_console_logger_0000_tcb has no temporal fault endpoint
model::scheduler:TCB debug_console_debug_console_logger_0000_tcb has no fault endpoint
model::scheduler:TCB memory_manager_memory_manager_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB memory_manager_memory_manager_0_control_tcb has no fault endpoint
model::scheduler:TCB memory_manager_memory_manager_memory_0000_tcb has no temporal fault endpoint
model::scheduler:TCB memory_manager_memory_manager_memory_0000_tcb has no fault endpoint
model::scheduler:TCB process_manager_process_manager_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB process_manager_process_manager_0_control_tcb has no fault endpoint
model::scheduler:TCB process_manager_process_manager_pkg_mgmt_0000_tcb has no temporal fault endpoint
model::scheduler:TCB process_manager_process_manager_pkg_mgmt_0000_tcb has no fault endpoint
model::scheduler:TCB process_manager_process_manager_proc_ctrl_0000_tcb has no temporal fault endpoint
model::scheduler:TCB process_manager_process_manager_proc_ctrl_0000_tcb has no fault endpoint
model::scheduler:TCB sdk_runtime_sdk_runtime_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB sdk_runtime_sdk_runtime_0_control_tcb has no fault endpoint
model::scheduler:TCB sdk_runtime_sdk_runtime_sdk_manager_0000_tcb has no temporal fault endpoint
model::scheduler:TCB sdk_runtime_sdk_runtime_sdk_manager_0000_tcb has no fault endpoint
model::scheduler:TCB security_coordinator_security_coordinator_0_control_tcb has no temporal fault endpoint
model::scheduler:TCB security_coordinator_security_coordinator_0_control_tcb has no fault endpoint
model::scheduler:TCB security_coordinator_security_coordinator_security_0000_tcb has no temporal fault endpoint
model::scheduler:TCB security_coordinator_security_coordinator_security_0000_tcb has no fault endpoint
model:Initialize CSpaces...
cantrip_os_rootserver:Rootserver cnode: 2967 used of 10000
cantrip_os_rootserver:Rootserver untypeds: 82 used of 230
model:Create holding cnode for 1389 caps, depth 11
model:Hand-off 68 untypeds from src slot 15 to dest slot 15
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>
model:Starting threads...
CANTRIP> source -q autostart.repl
cantrip_memory_manager::memory_manager::slot 15 seL4_UntypedDesc { paddr: 134217728, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 16 seL4_UntypedDesc { paddr: 268435456, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 17 seL4_UntypedDesc { paddr: 536870912, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }
CANTRIP> EOF
cantrip_memory_manager::memory_manager::slot 18 seL4_UntypedDesc { paddr: 1073745920, sizeBits: 12, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 19 seL4_UntypedDesc { paddr: 1073750016, sizeBits: 13, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 20 seL4_UntypedDesc { paddr: 1073758208, sizeBits: 14, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 21 seL4_UntypedDesc { paddr: 1073774592, sizeBits: 15, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 22 seL4_UntypedDesc { paddr: 1073807360, sizeBits: 16, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 23 seL4_UntypedDesc { paddr: 1073872896, sizeBits: 17, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 24 seL4_UntypedDesc { paddr: 1074003968, sizeBits: 18, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 25 seL4_UntypedDesc { paddr: 1074266112, sizeBits: 19, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 26 seL4_UntypedDesc { paddr: 1074790400, sizeBits: 20, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 27 seL4_UntypedDesc { paddr: 1075838976, sizeBits: 21, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 28 seL4_UntypedDesc { paddr: 1077936128, sizeBits: 22, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 29 seL4_UntypedDesc { paddr: 1082130432, sizeBits: 23, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 30 seL4_UntypedDesc { paddr: 1090519040, sizeBits: 24, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 31 seL4_UntypedDesc { paddr: 1107296256, sizeBits: 25, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 32 seL4_UntypedDesc { paddr: 1140850688, sizeBits: 26, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 33 seL4_UntypedDesc { paddr: 1207959552, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 34 seL4_UntypedDesc { paddr: 1342177280, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 35 seL4_UntypedDesc { paddr: 1610612736, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 36 seL4_UntypedDesc { paddr: 2147483648, sizeBits: 31, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 37 seL4_UntypedDesc { paddr: 4294967296, sizeBits: 32, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 38 seL4_UntypedDesc { paddr: 8589934592, sizeBits: 33, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 39 seL4_UntypedDesc { paddr: 17179869184, sizeBits: 34, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 40 seL4_UntypedDesc { paddr: 34359738368, sizeBits: 35, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 41 seL4_UntypedDesc { paddr: 68719476736, sizeBits: 36, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 42 seL4_UntypedDesc { paddr: 137438953472, sizeBits: 37, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 43 seL4_UntypedDesc { paddr: 274877906944, sizeBits: 38, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 44 seL4_UntypedDesc { paddr: 549755813888, sizeBits: 39, isDevice: 1, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::slot 45 seL4_UntypedDesc { paddr: 2400256, sizeBits: 13, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 8192, sizeBits: 13 }
cantrip_memory_manager::memory_manager::slot 46 seL4_UntypedDesc { paddr: 2408448, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16384, sizeBits: 14 }
cantrip_memory_manager::memory_manager::slot 47 seL4_UntypedDesc { paddr: 2424832, sizeBits: 16, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 65536, sizeBits: 16 }
cantrip_memory_manager::memory_manager::slot 48 seL4_UntypedDesc { paddr: 2490368, sizeBits: 17, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 131072, sizeBits: 17 }
cantrip_memory_manager::memory_manager::slot 49 seL4_UntypedDesc { paddr: 2621440, sizeBits: 19, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 524288, sizeBits: 19 }
cantrip_memory_manager::memory_manager::slot 50 seL4_UntypedDesc { paddr: 3145728, sizeBits: 20, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 1048576, sizeBits: 20 }
cantrip_memory_manager::memory_manager::slot 51 seL4_UntypedDesc { paddr: 4194304, sizeBits: 22, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4194304, sizeBits: 22 }
cantrip_memory_manager::memory_manager::slot 52 seL4_UntypedDesc { paddr: 8388608, sizeBits: 16, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 65536, sizeBits: 16 }
cantrip_memory_manager::memory_manager::slot 53 seL4_UntypedDesc { paddr: 8454144, sizeBits: 15, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 32768, sizeBits: 15 }
cantrip_memory_manager::memory_manager::slot 54 seL4_UntypedDesc { paddr: 8486912, sizeBits: 13, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 8192, sizeBits: 13 }
cantrip_memory_manager::memory_manager::slot 55 seL4_UntypedDesc { paddr: 8495104, sizeBits: 12, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4096, sizeBits: 12 }
cantrip_memory_manager::memory_manager::slot 56 seL4_UntypedDesc { paddr: 8499200, sizeBits: 12, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4096, sizeBits: 12 }
cantrip_memory_manager::memory_manager::slot 57 seL4_UntypedDesc { paddr: 8503296, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16384, sizeBits: 14 }
cantrip_memory_manager::memory_manager::slot 58 seL4_UntypedDesc { paddr: 8519680, sizeBits: 17, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 131072, sizeBits: 17 }
cantrip_memory_manager::memory_manager::slot 59 seL4_UntypedDesc { paddr: 8650752, sizeBits: 18, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 262144, sizeBits: 18 }
cantrip_memory_manager::memory_manager::slot 60 seL4_UntypedDesc { paddr: 8912896, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 524288, sizeBits: 19 }
cantrip_memory_manager::memory_manager::slot 61 seL4_UntypedDesc { paddr: 9437184, sizeBits: 20, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 1048576, sizeBits: 20 }
cantrip_memory_manager::memory_manager::slot 62 seL4_UntypedDesc { paddr: 10485760, sizeBits: 21, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 2097152, sizeBits: 21 }
cantrip_memory_manager::memory_manager::slot 63 seL4_UntypedDesc { paddr: 12582912, sizeBits: 22, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4194304, sizeBits: 22 }
cantrip_memory_manager::memory_manager::slot 64 seL4_UntypedDesc { paddr: 16777216, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16777216, sizeBits: 24 }
cantrip_memory_manager::memory_manager::slot 65 seL4_UntypedDesc { paddr: 33554432, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 28049408, sizeBits: 25 }
cantrip_memory_manager::memory_manager::slot 66 seL4_UntypedDesc { paddr: 67108864, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 33554432, sizeBits: 25 }
cantrip_memory_manager::memory_manager::slot 67 seL4_UntypedDesc { paddr: 100663296, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16777216, sizeBits: 24 }
cantrip_memory_manager::memory_manager::slot 68 seL4_UntypedDesc { paddr: 117440512, sizeBits: 23, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 8388608, sizeBits: 23 }
cantrip_memory_manager::memory_manager::slot 69 seL4_UntypedDesc { paddr: 130064640, sizeBits: 8, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 256, sizeBits: 8 }
cantrip_memory_manager::memory_manager::slot 70 seL4_UntypedDesc { paddr: 130064896, sizeBits: 9, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 512, sizeBits: 9 }
cantrip_memory_manager::memory_manager::slot 71 seL4_UntypedDesc { paddr: 130065408, sizeBits: 10, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 1024, sizeBits: 10 }
cantrip_memory_manager::memory_manager::slot 72 seL4_UntypedDesc { paddr: 130066432, sizeBits: 11, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 2048, sizeBits: 11 }
cantrip_memory_manager::memory_manager::slot 73 seL4_UntypedDesc { paddr: 130068480, sizeBits: 12, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4096, sizeBits: 12 }
cantrip_memory_manager::memory_manager::slot 74 seL4_UntypedDesc { paddr: 130072576, sizeBits: 14, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16384, sizeBits: 14 }
cantrip_memory_manager::memory_manager::slot 75 seL4_UntypedDesc { paddr: 130088960, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 65536, sizeBits: 16 }
cantrip_memory_manager::memory_manager::slot 76 seL4_UntypedDesc { paddr: 130154496, sizeBits: 17, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 131072, sizeBits: 17 }
cantrip_memory_manager::memory_manager::slot 77 seL4_UntypedDesc { paddr: 130285568, sizeBits: 18, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 262144, sizeBits: 18 }
cantrip_memory_manager::memory_manager::slot 78 seL4_UntypedDesc { paddr: 130547712, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 524288, sizeBits: 19 }
cantrip_memory_manager::memory_manager::slot 79 seL4_UntypedDesc { paddr: 131072000, sizeBits: 20, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 1048576, sizeBits: 20 }
cantrip_memory_manager::memory_manager::slot 80 seL4_UntypedDesc { paddr: 132120576, sizeBits: 21, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 2097152, sizeBits: 21 }
cantrip_memory_manager::memory_manager::slot 81 seL4_UntypedDesc { paddr: 125829120, sizeBits: 22, isDevice: 0, isTainted: 1, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4194304, sizeBits: 22 }
cantrip_memory_manager::memory_manager::slot 82 seL4_UntypedDesc { paddr: 0, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }
cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 65536, sizeBits: 16 }
cantrip_memory_manager::Global memory: 0 allocated 126336768 free, reserved: 2334720 kernel 5505024 user
cantrip_memory_manager::memory_manager::alloc ObjDescBundle { cnode: 3, depth: 8, objs: [ObjDesc { type_: seL4_ReplyObject, count: 1, cptr: 1 }] } Static
<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff8002527c00 "memory_manager_memory_manager_memory_0000_tcb" @48e8d4]: Untyped Retype: Destination cap invalid or read-only.>>
panic::panicked at 'static allocation failed: seL4_FailedLookup', cantrip-memory-manager/src/memory_manager/mod.rs:246:21

Also tried skip the static allocation by commenting out https://github.com/AmbiML/sparrow-cantrip-full/blob/main/apps/system/components/MemoryManager/cantrip-memory-manager/src/memory_manager/mod.rs#L273 and got a different error:

cantrip_memory_manager::Global memory: 0 allocated 126336768 free, reserved: 2334720 kernel 5505024 user
cantrip_memory_manager::memory_manager::alloc ObjDescBundle { cnode: 3, depth: 8, objs: [ObjDesc { type_: seL4_ReplyObject, count: 1, cptr: 1 }] } Static
<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff8002526c00 "memory_manager_memory_manager_memory_0000_tcb" @48e8a8]: Untyped Retype: Destination cap invalid or read-only.>>
cantrip_memory_manager::memory_manager::Allocation request failed (retype returned seL4_FailedLookup)
panic::panicked at 'alloc: UnknownError', cantrip-sdk-component/src/run.rs:140:18
sleffler commented 1 year ago

There is a cmd called capscan that dumps the cnode contents of a component to the console. It might be helpful to issue it from the memory manager before the first allocation so you can see what's in the destination slot. The callable function is Camkes::capscan() since it's unlikely you can issue the shell cmd before the first alloc request hits memory_manager.

On Thu, Jun 8, 2023 at 8:19 PM lopzek @.***> wrote:

Added more logs and I got more info as follows

U-Boot> bootelf 10000000## Starting application at 0x0081b000 ...

ELF-loader started on CPU: ARM Ltd. Cortex-A53 r0p4 paddr=[81b000..127a0ff] No DTB passed in from boot loader. Looking for DTB in CPIO archive...found at 944eb8. Loaded DTB from 944eb8. paddr=[246000..249fff] ELF-loading image 'kernel' to 0 paddr=[0..245fff] vaddr=[ffffff8000000000..ffffff8000245fff] virt_entry=ffffff8000000000 ELF-loading image 'capdl-loader' to 24a000 paddr=[24a000..81afff] vaddr=[400000..9d0fff] virt_entry=400a38 Enabling MMU and paging Jumping to kernel-image entry point...

Bootstrapping kernel Booting all finished, dropped to user space cantrip_os_rootserver:setup heap: start_addr 0x9941f0 size 4096 cantrip_os_rootserver:Bootinfo: (1584, 131072) empty slots 1 nodes (15, 83) untyped 131072 cnode slots cantrip_os_rootserver:Model: 1342 objects 1 irqs 0 untypeds 2 asids cantrip_os_rootserver:capDL spec: 0.29 Mbytes cantrip_os_rootserver:CAmkES components: 4.51 Mbytes cantrip_os_rootserver:Rootserver executable: 1.01 Mbytes model:Rootserver is running in domain 0 model:Create objects... model::loader_alloc:Create ASID pool process_manager_asid_pool asid_slot=2942 asid_ut=0xafd model:Assign ASIDPool 1619 for debug_console_group_bin_pd model:Assign ASIDPool 2796 for memory_manager_group_bin_pd model:Assign ASIDPool 2817 for process_manager_group_bin_pd model:Assign ASIDPool 2830 for sdk_runtime_group_bin_pd model:Assign ASIDPool 2833 for security_coordinator_group_bin_pd model:Initialize page frames... model:switch filedata fill to model:switch filedata fill to debug_console_group_bin model:switch filedata fill to memory_manager_group_bin model:switch filedata fill to process_manager_group_bin model:switch filedata fill to sdk_runtime_group_bin model:Initialize VSpaces...<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1201 old 2801 new 2943 overflow 2944<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1198 old 2798 new 2945 overflow 2946<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1234 old 2834 new 2947 overflow 2948<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1197 old 2797 new 2949 overflow 2950<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1202 old 2802 new 2951 overflow 2952<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1200 old 2800 new 2953 overflow 2954<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1204 old 2804 new 2955 overflow 2956<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1205 old 2805 new 2957 overflow 2958<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1206 old 2806 new 2959 overflow 2960<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1207 old 2807 new 2961 overflow 2962<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1199 old 2799 new 2963 overflow 2964<<seL4(CPU 0) [decodeARMFrameInvocation/2137 T0xffffff8000822400 "rootserver" @441754]: ARMPageMap: Attempting to remap a frame that does not belong to the passed address space>>model:Shared page @.; dup'ingmodel:dup: obj CDL_Frame obj_id 1203 old 2803 new 2965 overflow 2966model:Initialize TCBs...model::scheduler:TCB debug_console_debug_console_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB debug_console_debug_console_0_control_tcb has no fault endpointmodel::scheduler:TCB debug_console_debug_console_logger_0000_tcb has no temporal fault endpointmodel::scheduler:TCB debug_console_debug_console_logger_0000_tcb has no fault endpointmodel::scheduler:TCB memory_manager_memory_manager_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB memory_manager_memory_manager_0_control_tcb has no fault endpointmodel::scheduler:TCB memory_manager_memory_manager_memory_0000_tcb has no temporal fault endpointmodel::scheduler:TCB memory_manager_memory_manager_memory_0000_tcb has no fault endpointmodel::scheduler:TCB process_manager_process_manager_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB process_manager_process_manager_0_control_tcb has no fault endpointmodel::scheduler:TCB process_manager_process_manager_pkg_mgmt_0000_tcb has no temporal fault endpointmodel::scheduler:TCB process_manager_process_manager_pkg_mgmt_0000_tcb has no fault endpointmodel::scheduler:TCB process_manager_process_manager_proc_ctrl_0000_tcb has no temporal fault endpointmodel::scheduler:TCB process_manager_process_manager_proc_ctrl_0000_tcb has no fault endpointmodel::scheduler:TCB sdk_runtime_sdk_runtime_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB sdk_runtime_sdk_runtime_0_control_tcb has no fault endpointmodel::scheduler:TCB sdk_runtime_sdk_runtime_sdk_manager_0000_tcb has no temporal fault endpointmodel::scheduler:TCB sdk_runtime_sdk_runtime_sdk_manager_0000_tcb has no fault endpointmodel::scheduler:TCB security_coordinator_security_coordinator_0_control_tcb has no temporal fault endpointmodel::scheduler:TCB security_coordinator_security_coordinator_0_control_tcb has no fault endpointmodel::scheduler:TCB security_coordinator_security_coordinator_security_0000_tcb has no temporal fault endpointmodel::scheduler:TCB security_coordinator_security_coordinator_security_0000_tcb has no fault endpointmodel:Initialize CSpaces...cantrip_os_rootserver:Rootserver cnode: 2967 used of 10000cantrip_os_rootserver:Rootserver untypeds: 82 used of 230model:Create holding cnode for 1389 caps, depth 11model:Hand-off 68 untypeds from src slot 15 to dest slot 15<<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>><<seL4(CPU 0) [decodeCNodeInvocation/107 T0xffffff8000822400 "rootserver" @42c144]: CNode Copy/Mint/Move/Mutate: Source slot invalid or empty.>>model:Starting threads...CANTRIP> source -q autostart.replcantrip_memory_manager::memory_manager::slot 15 seL4_UntypedDesc { paddr: 134217728, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 16 seL4_UntypedDesc { paddr: 268435456, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 17 seL4_UntypedDesc { paddr: 536870912, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }CANTRIP> EOFcantrip_memory_manager::memory_manager::slot 18 seL4_UntypedDesc { paddr: 1073745920, sizeBits: 12, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 19 seL4_UntypedDesc { paddr: 1073750016, sizeBits: 13, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 20 seL4_UntypedDesc { paddr: 1073758208, sizeBits: 14, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 21 seL4_UntypedDesc { paddr: 1073774592, sizeBits: 15, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 22 seL4_UntypedDesc { paddr: 1073807360, sizeBits: 16, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 23 seL4_UntypedDesc { paddr: 1073872896, sizeBits: 17, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 24 seL4_UntypedDesc { paddr: 1074003968, sizeBits: 18, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 25 seL4_UntypedDesc { paddr: 1074266112, sizeBits: 19, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 26 seL4_UntypedDesc { paddr: 1074790400, sizeBits: 20, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 27 seL4_UntypedDesc { paddr: 1075838976, sizeBits: 21, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 28 seL4_UntypedDesc { paddr: 1077936128, sizeBits: 22, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 29 seL4_UntypedDesc { paddr: 1082130432, sizeBits: 23, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 30 seL4_UntypedDesc { paddr: 1090519040, sizeBits: 24, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 31 seL4_UntypedDesc { paddr: 1107296256, sizeBits: 25, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 32 seL4_UntypedDesc { paddr: 1140850688, sizeBits: 26, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 33 seL4_UntypedDesc { paddr: 1207959552, sizeBits: 27, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 34 seL4_UntypedDesc { paddr: 1342177280, sizeBits: 28, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 35 seL4_UntypedDesc { paddr: 1610612736, sizeBits: 29, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 36 seL4_UntypedDesc { paddr: 2147483648 <(214)%20748-3648>, sizeBits: 31, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 37 seL4_UntypedDesc { paddr: 4294967296, sizeBits: 32, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 38 seL4_UntypedDesc { paddr: 8589934592 <(858)%20993-4592>, sizeBits: 33, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 39 seL4_UntypedDesc { paddr: 17179869184 <(717)%20986-9184>, sizeBits: 34, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 40 seL4_UntypedDesc { paddr: 34359738368, sizeBits: 35, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 41 seL4_UntypedDesc { paddr: 68719476736, sizeBits: 36, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 42 seL4_UntypedDesc { paddr: 137438953472, sizeBits: 37, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 43 seL4_UntypedDesc { paddr: 274877906944, sizeBits: 38, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 44 seL4_UntypedDesc { paddr: 549755813888, sizeBits: 39, isDevice: 1, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::slot 45 seL4_UntypedDesc { paddr: 2400256, sizeBits: 13, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 8192, sizeBits: 13 }cantrip_memory_manager::memory_manager::slot 46 seL4_UntypedDesc { paddr: 2408448, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16384, sizeBits: 14 }cantrip_memory_manager::memory_manager::slot 47 seL4_UntypedDesc { paddr: 2424832, sizeBits: 16, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 65536, sizeBits: 16 }cantrip_memory_manager::memory_manager::slot 48 seL4_UntypedDesc { paddr: 2490368, sizeBits: 17, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 131072, sizeBits: 17 }cantrip_memory_manager::memory_manager::slot 49 seL4_UntypedDesc { paddr: 2621440, sizeBits: 19, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 524288, sizeBits: 19 }cantrip_memory_manager::memory_manager::slot 50 seL4_UntypedDesc { paddr: 3145728, sizeBits: 20, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 1048576, sizeBits: 20 }cantrip_memory_manager::memory_manager::slot 51 seL4_UntypedDesc { paddr: 4194304, sizeBits: 22, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4194304, sizeBits: 22 }cantrip_memory_manager::memory_manager::slot 52 seL4_UntypedDesc { paddr: 8388608, sizeBits: 16, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 65536, sizeBits: 16 }cantrip_memory_manager::memory_manager::slot 53 seL4_UntypedDesc { paddr: 8454144, sizeBits: 15, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 32768, sizeBits: 15 }cantrip_memory_manager::memory_manager::slot 54 seL4_UntypedDesc { paddr: 8486912, sizeBits: 13, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 8192, sizeBits: 13 }cantrip_memory_manager::memory_manager::slot 55 seL4_UntypedDesc { paddr: 8495104, sizeBits: 12, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4096, sizeBits: 12 }cantrip_memory_manager::memory_manager::slot 56 seL4_UntypedDesc { paddr: 8499200, sizeBits: 12, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4096, sizeBits: 12 }cantrip_memory_manager::memory_manager::slot 57 seL4_UntypedDesc { paddr: 8503296, sizeBits: 14, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16384, sizeBits: 14 }cantrip_memory_manager::memory_manager::slot 58 seL4_UntypedDesc { paddr: 8519680, sizeBits: 17, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 131072, sizeBits: 17 }cantrip_memory_manager::memory_manager::slot 59 seL4_UntypedDesc { paddr: 8650752, sizeBits: 18, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 262144, sizeBits: 18 }cantrip_memory_manager::memory_manager::slot 60 seL4_UntypedDesc { paddr: 8912896, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 524288, sizeBits: 19 }cantrip_memory_manager::memory_manager::slot 61 seL4_UntypedDesc { paddr: 9437184, sizeBits: 20, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 1048576, sizeBits: 20 }cantrip_memory_manager::memory_manager::slot 62 seL4_UntypedDesc { paddr: 10485760, sizeBits: 21, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 2097152, sizeBits: 21 }cantrip_memory_manager::memory_manager::slot 63 seL4_UntypedDesc { paddr: 12582912, sizeBits: 22, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4194304, sizeBits: 22 }cantrip_memory_manager::memory_manager::slot 64 seL4_UntypedDesc { paddr: 16777216, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16777216, sizeBits: 24 }cantrip_memory_manager::memory_manager::slot 65 seL4_UntypedDesc { paddr: 33554432, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 28049408, sizeBits: 25 }cantrip_memory_manager::memory_manager::slot 66 seL4_UntypedDesc { paddr: 67108864, sizeBits: 25, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 33554432, sizeBits: 25 }cantrip_memory_manager::memory_manager::slot 67 seL4_UntypedDesc { paddr: 100663296, sizeBits: 24, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16777216, sizeBits: 24 }cantrip_memory_manager::memory_manager::slot 68 seL4_UntypedDesc { paddr: 117440512, sizeBits: 23, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 8388608, sizeBits: 23 }cantrip_memory_manager::memory_manager::slot 69 seL4_UntypedDesc { paddr: 130064640, sizeBits: 8, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 256, sizeBits: 8 }cantrip_memory_manager::memory_manager::slot 70 seL4_UntypedDesc { paddr: 130064896, sizeBits: 9, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 512, sizeBits: 9 }cantrip_memory_manager::memory_manager::slot 71 seL4_UntypedDesc { paddr: 130065408, sizeBits: 10, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 1024, sizeBits: 10 }cantrip_memory_manager::memory_manager::slot 72 seL4_UntypedDesc { paddr: 130066432, sizeBits: 11, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 2048, sizeBits: 11 }cantrip_memory_manager::memory_manager::slot 73 seL4_UntypedDesc { paddr: 130068480, sizeBits: 12, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4096, sizeBits: 12 }cantrip_memory_manager::memory_manager::slot 74 seL4_UntypedDesc { paddr: 130072576, sizeBits: 14, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 16384, sizeBits: 14 }cantrip_memory_manager::memory_manager::slot 75 seL4_UntypedDesc { paddr: 130088960, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 65536, sizeBits: 16 }cantrip_memory_manager::memory_manager::slot 76 seL4_UntypedDesc { paddr: 130154496, sizeBits: 17, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 131072, sizeBits: 17 }cantrip_memory_manager::memory_manager::slot 77 seL4_UntypedDesc { paddr: 130285568, sizeBits: 18, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 262144, sizeBits: 18 }cantrip_memory_manager::memory_manager::slot 78 seL4_UntypedDesc { paddr: 130547712, sizeBits: 19, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 524288, sizeBits: 19 }cantrip_memory_manager::memory_manager::slot 79 seL4_UntypedDesc { paddr: 131072000, sizeBits: 20, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 1048576, sizeBits: 20 }cantrip_memory_manager::memory_manager::slot 80 seL4_UntypedDesc { paddr: 132120576, sizeBits: 21, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 2097152, sizeBits: 21 }cantrip_memory_manager::memory_manager::slot 81 seL4_UntypedDesc { paddr: 125829120, sizeBits: 22, isDevice: 0, isTainted: 1, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 4194304, sizeBits: 22 }cantrip_memory_manager::memory_manager::slot 82 seL4_UntypedDesc { paddr: 0, sizeBits: 16, isDevice: 0, isTainted: 0, align: [] }cantrip_memory_manager::memory_manager::untyped_describe info: seL4_Untyped_Describe { error: 2, remainingBytes: 65536, sizeBits: 16 }cantrip_memory_manager::Global memory: 0 allocated 126336768 free, reserved: 2334720 kernel 5505024 usercantrip_memory_manager::memorymanager::alloc ObjDescBundle { cnode: 3, depth: 8, objs: [ObjDesc { type: seL4_ReplyObject, count: 1, cptr: 1 }] } Static<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff8002527c00 "memory_manager_memory_manager_memory_0000_tcb" @48e8d4]: Untyped Retype: Destination cap invalid or read-only.>>panic::panicked at 'static allocation failed: seL4_FailedLookup', cantrip-memory-manager/src/memory_manager/mod.rs:246:21

Also tried skip the static allocation by commenting out https://github.com/AmbiML/sparrow-cantrip-full/blob/main/apps/system/components/MemoryManager/cantrip-memory-manager/src/memory_manager/mod.rs#L273 and got a different error:

cantrip_memory_manager::Global memory: 0 allocated 126336768 free, reserved: 2334720 kernel 5505024 user cantrip_memory_manager::memorymanager::alloc ObjDescBundle { cnode: 3, depth: 8, objs: [ObjDesc { type: seL4_ReplyObject, count: 1, cptr: 1 }] } Static<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff8002526c00 "memory_manager_memory_manager_memory_0000_tcb" @48e8a8]: Untyped Retype: Destination cap invalid or read-only.>>cantrip_memory_manager::memory_manager::Allocation request failed (retype returned seL4_FailedLookup)panic::panicked at 'alloc: UnknownError', cantrip-sdk-component/src/run.rs:140:18

— Reply to this email directly, view it on GitHub https://github.com/AmbiML/sparrow-cantrip-full/issues/10#issuecomment-1583903545, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRM7IJOZESFX2EMVZXKNRDXKKI5TANCNFSM6AAAAAAYLD2R5Q . You are receiving this because you commented.Message ID: @.***>

lopzek commented 1 year ago

here's the info produced by the capscan(). I added a call to this function in Memory_manager.

|- 001. cap_cnode_cap (pptr=0x0xffffff80024c4000, radix=7) [isFinal=0, isRevokable=0] -> null
|- 002. unknown cap [isFinal=0, isRevokable=0] -> null
|- 003. cap_cnode_cap (pptr=0x0xffffff8002022000, radix=8) [isFinal=0, isRevokable=0] -> null
|- 004. cap_thread_cap (pptr=0x0xffffff8002527400) [isFinal=0, isRevokable=0] -> null
|- 005. cap_sched_context_cap [isFinal=0, isRevokable=0] -> null
|- 006. cap_thread_cap (pptr=0x0xffffff8002527c00) [isFinal=0, isRevokable=0] -> null
|- 007. cap_sched_context_cap [isFinal=0, isRevokable=0] -> null
|- 008. cap_endpoint_cap (pptr=0x0xffffff800252cc10) [isFinal=0, isRevokable=0] -> null
|- 009. cap_endpoint_cap (pptr=0x0xffffff800252cbf0) [isFinal=0, isRevokable=0] -> null
|- 00a. cap_endpoint_cap (pptr=0x0xffffff800252cc00) [isFinal=0, isRevokable=0] -> null
|- 00b. cap_endpoint_cap (pptr=0x0xffffff800252cc30) [isFinal=0, isRevokable=0] -> null
|- 00c. cap_reply_cap (pptr=0x0xffffff800252cb20) [isFinal=0, isRevokable=0] -> null
|- 00d. cap_endpoint_cap (pptr=0x0xffffff800252cc20) [isFinal=0, isRevokable=1] -> null
|- 00e. cap_cnode_cap (pptr=0x0xffffff8002530000, radix=11) [isFinal=1, isRevokable=1] -> null
|- 00f. cap_untyped_cap (pptr=0x0xffffff8008000000, size=27) [isFinal=1, isRevokable=1] -> null
|- 010. cap_untyped_cap (pptr=0x0xffffff8010000000, size=28) [isFinal=1, isRevokable=1] -> null
|- 011. cap_untyped_cap (pptr=0x0xffffff8020000000, size=29) [isFinal=1, isRevokable=1] -> null
|- 012. cap_untyped_cap (pptr=0x0xffffff8040001000, size=12) [isFinal=1, isRevokable=1] -> null
|- 013. cap_untyped_cap (pptr=0x0xffffff8040002000, size=13) [isFinal=1, isRevokable=1] -> null
|- 014. cap_untyped_cap (pptr=0x0xffffff8040004000, size=14) [isFinal=1, isRevokable=1] -> null
|- 015. cap_untyped_cap (pptr=0x0xffffff8040008000, size=15) [isFinal=1, isRevokable=1] -> null
|- 016. cap_untyped_cap (pptr=0x0xffffff8040010000, size=16) [isFinal=1, isRevokable=1] -> null
|- 017. cap_untyped_cap (pptr=0x0xffffff8040020000, size=17) [isFinal=1, isRevokable=1] -> null
|- 018. cap_untyped_cap (pptr=0x0xffffff8040040000, size=18) [isFinal=1, isRevokable=1] -> null
|- 019. cap_untyped_cap (pptr=0x0xffffff8040080000, size=19) [isFinal=1, isRevokable=1] -> null
|- 01a. cap_untyped_cap (pptr=0x0xffffff8040100000, size=20) [isFinal=1, isRevokable=1] -> null
|- 01b. cap_untyped_cap (pptr=0x0xffffff8040200000, size=21) [isFinal=1, isRevokable=1] -> null
|- 01c. cap_untyped_cap (pptr=0x0xffffff8040400000, size=22) [isFinal=1, isRevokable=1] -> null
|- 01d. cap_untyped_cap (pptr=0x0xffffff8040800000, size=23) [isFinal=1, isRevokable=1] -> null
|- 01e. cap_untyped_cap (pptr=0x0xffffff8041000000, size=24) [isFinal=1, isRevokable=1] -> null
|- 01f. cap_untyped_cap (pptr=0x0xffffff8042000000, size=25) [isFinal=1, isRevokable=1] -> null
|- 020. cap_untyped_cap (pptr=0x0xffffff8044000000, size=26) [isFinal=1, isRevokable=1] -> null
|- 021. cap_untyped_cap (pptr=0x0xffffff8048000000, size=27) [isFinal=1, isRevokable=1] -> null
|- 022. cap_untyped_cap (pptr=0x0xffffff8050000000, size=28) [isFinal=1, isRevokable=1] -> null
|- 023. cap_untyped_cap (pptr=0x0xffffff8060000000, size=29) [isFinal=1, isRevokable=1] -> null
|- 024. cap_untyped_cap (pptr=0x0xffffff8080000000, size=31) [isFinal=1, isRevokable=1] -> null
|- 025. cap_untyped_cap (pptr=0x0xffffff8100000000, size=32) [isFinal=1, isRevokable=1] -> null
|- 026. cap_untyped_cap (pptr=0x0xffffff8200000000, size=33) [isFinal=1, isRevokable=1] -> null
|- 027. cap_untyped_cap (pptr=0x0xffffff8400000000, size=34) [isFinal=1, isRevokable=1] -> null
|- 028. cap_untyped_cap (pptr=0x0xffffff8800000000, size=35) [isFinal=1, isRevokable=1] -> null
|- 029. cap_untyped_cap (pptr=0x0xffffff9000000000, size=36) [isFinal=1, isRevokable=1] -> null
|- 02a. cap_untyped_cap (pptr=0x0xffffffa000000000, size=37) [isFinal=1, isRevokable=1] -> null
|- 02b. cap_untyped_cap (pptr=0x0xffffffc000000000, size=38) [isFinal=1, isRevokable=1] -> null
|- 02c. cap_untyped_cap (pptr=0x0, size=39) [isFinal=1, isRevokable=1] -> null
|- 02d. cap_untyped_cap (pptr=0x0xffffff800024a000, size=13) [isFinal=1, isRevokable=1] -> null
|- 02e. cap_untyped_cap (pptr=0x0xffffff800024c000, size=14) [isFinal=1, isRevokable=1] -> null
|- 02f. cap_untyped_cap (pptr=0x0xffffff8000250000, size=16) [isFinal=1, isRevokable=1] -> null
|- 030. cap_untyped_cap (pptr=0x0xffffff8000260000, size=17) [isFinal=1, isRevokable=1] -> null
|- 031. cap_untyped_cap (pptr=0x0xffffff8000280000, size=19) [isFinal=1, isRevokable=1] -> null
|- 032. cap_untyped_cap (pptr=0x0xffffff8000300000, size=20) [isFinal=1, isRevokable=1] -> null
|- 033. cap_untyped_cap (pptr=0x0xffffff8000400000, size=22) [isFinal=1, isRevokable=1] -> null
|- 034. cap_untyped_cap (pptr=0x0xffffff8000800000, size=16) [isFinal=1, isRevokable=1] -> null
|- 035. cap_untyped_cap (pptr=0x0xffffff8000810000, size=15) [isFinal=1, isRevokable=1] -> null
|- 036. cap_untyped_cap (pptr=0x0xffffff8000818000, size=13) [isFinal=1, isRevokable=1] -> null
|- 037. cap_untyped_cap (pptr=0x0xffffff800081a000, size=12) [isFinal=1, isRevokable=1] -> null
|- 038. cap_untyped_cap (pptr=0x0xffffff800081b000, size=12) [isFinal=1, isRevokable=1] -> null
|- 039. cap_untyped_cap (pptr=0x0xffffff800081c000, size=14) [isFinal=1, isRevokable=1] -> null
|- 03a. cap_untyped_cap (pptr=0x0xffffff8000820000, size=17) [isFinal=1, isRevokable=1] -> null
|- 03b. cap_untyped_cap (pptr=0x0xffffff8000840000, size=18) [isFinal=1, isRevokable=1] -> null
|- 03c. cap_untyped_cap (pptr=0x0xffffff8000880000, size=19) [isFinal=1, isRevokable=1] -> null
|- 03d. cap_untyped_cap (pptr=0x0xffffff8000900000, size=20) [isFinal=1, isRevokable=1] -> null
|- 03e. cap_untyped_cap (pptr=0x0xffffff8000a00000, size=21) [isFinal=1, isRevokable=1] -> null
|- 03f. cap_untyped_cap (pptr=0x0xffffff8000c00000, size=22) [isFinal=1, isRevokable=1] -> null
|- 040. cap_untyped_cap (pptr=0x0xffffff8001000000, size=24) [isFinal=1, isRevokable=1] -> null
|- 041. cap_untyped_cap (pptr=0x0xffffff8002000000, size=25) [isFinal=1, isRevokable=1] -> 00e. cap_cnode_cap (pptr=0x0xffffff8002530000, radix=11) [isFinal=1, isRevokable=1] -> 00b. cap_endpoint_cap (pptr=0x0xffffff800252cc30) [isFinal=0, isRevokable=0] -> 00d. cap_endpoint_cap (pptr=0x0xffffff800252cc20) [isFinal=0, isRevokable=1] -> 008. cap_endpoint_cap (pptr=0x0xffffff800252cc10) [isFinal=0, isRevokable=0] -> 00a. cap_endpoint_cap (pptr=0x0xffffff800252cc00) [isFinal=0, isRevokable=0] -> 009. cap_endpoint_cap (pptr=0x0xffffff800252cbf0) [isFinal=0, isRevokable=0] -> 00c. cap_reply_cap (pptr=0x0xffffff800252cb20) [isFinal=0, isRevokable=0] -> 007. cap_sched_context_cap [isFinal=0, isRevokable=0] -> 005. cap_sched_context_cap [isFinal=0, isRevokable=0] -> 006. cap_thread_cap (pptr=0x0xffffff8002527c00) [isFinal=0, isRevokable=0] -> 004. cap_thread_cap (pptr=0x0xffffff8002527400) [isFinal=0, isRevokable=0] -> 002. unknown cap [isFinal=0, isRevokable=0] -> 001. cap_cnode_cap (pptr=0x0xffffff80024c4000, radix=7) [isFinal=0, isRevokable=0] -> 003. cap_cnode_cap (pptr=0x0xffffff8002022000, radix=8) [isFinal=0, isRevokable=0] -> null
|- 042. cap_untyped_cap (pptr=0x0xffffff8004000000, size=25) [isFinal=1, isRevokable=1] -> null
|- 043. cap_untyped_cap (pptr=0x0xffffff8006000000, size=24) [isFinal=1, isRevokable=1] -> null
|- 044. cap_untyped_cap (pptr=0x0xffffff8007000000, size=23) [isFinal=1, isRevokable=1] -> null
|- 045. cap_untyped_cap (pptr=0x0xffffff8007c0a100, size=8) [isFinal=1, isRevokable=1] -> null
|- 046. cap_untyped_cap (pptr=0x0xffffff8007c0a200, size=9) [isFinal=1, isRevokable=1] -> null
|- 047. cap_untyped_cap (pptr=0x0xffffff8007c0a400, size=10) [isFinal=1, isRevokable=1] -> null
|- 048. cap_untyped_cap (pptr=0x0xffffff8007c0a800, size=11) [isFinal=1, isRevokable=1] -> null
|- 049. cap_untyped_cap (pptr=0x0xffffff8007c0b000, size=12) [isFinal=1, isRevokable=1] -> null
|- 04a. cap_untyped_cap (pptr=0x0xffffff8007c0c000, size=14) [isFinal=1, isRevokable=1] -> null
|- 04b. cap_untyped_cap (pptr=0x0xffffff8007c10000, size=16) [isFinal=1, isRevokable=1] -> null
|- 04c. cap_untyped_cap (pptr=0x0xffffff8007c20000, size=17) [isFinal=1, isRevokable=1] -> null
|- 04d. cap_untyped_cap (pptr=0x0xffffff8007c40000, size=18) [isFinal=1, isRevokable=1] -> null
|- 04e. cap_untyped_cap (pptr=0x0xffffff8007c80000, size=19) [isFinal=1, isRevokable=1] -> null
|- 04f. cap_untyped_cap (pptr=0x0xffffff8007d00000, size=20) [isFinal=1, isRevokable=1] -> null
|- 050. cap_untyped_cap (pptr=0x0xffffff8007e00000, size=21) [isFinal=1, isRevokable=1] -> null
|- 051. cap_untyped_cap (pptr=0x0xffffff8007800000, size=22) [isFinal=1, isRevokable=1] -> null
|- 052. cap_untyped_cap (pptr=0x0xffffff8000000000, size=16) [isFinal=1, isRevokable=1] -> null
cantrip_memory_manager::Global memory: 0 allocated 126336768 free, reserved: 2334720 kernel 5505024 user
cantrip_memory_manager::memory_manager::alloc ObjDescBundle { cnode: 3, depth: 8, objs: [ObjDesc { type_: seL4_ReplyObject, count: 1, cptr: 1 }] } Static
<<seL4(CPU 0) [decodeUntypedInvocation/132 T0xffffff8002527c00 "memory_manager_memory_manager_memory_0000_tcb" @48e8d8]: Untyped Retype: Destination cap invalid or read-only.>>
panic::panicked at 'static allocation failed: seL4_FailedLookup', cantrip-memory-manager/src/memory_manager/mod.rs:247:21
lopzek commented 1 year ago

update: to use the same settings as used for the QEMU, the cantrip.mem file should be loaded to physical address ox20000000. The file size is 1G so I have to downsize it to 128M and loaded into the memory by u-boot before lauching the kernel. Otherwise the cantrip_security_coordinator will complain 'invalid magic', as shown below. This, however, is not related to the memory issue. image

sleffler commented 1 year ago

If the board only has 128M of memory (vs the 1G assumed by the rpi3 target as set here https://github.com/AmbiML/sparrow-build/blob/main/platforms/rpi3/sim.mk#L20) then there are likely other bits that need adjusting too. The cpio archive of builtins is meant to be available somewhere in memory (on our sparrow platform it sits in flash or when running in simulation at an unused memory location). I don't know anything about your target hw so can't say where+how you would load the archive before booting the system.

This still doesn't explain why the untyped retype syscall fails as it does, but I still don't have a clear picture of the memory layout for your board. Have you tried booting stock seL4 (e.g sel4test)?

On Tue, Jun 27, 2023 at 9:16 PM lopzek @.***> wrote:

update: to use the same settings as used for the QEMU, the cantrip.mem file should be loaded to physical address ox20000000. The file size is 1G so I have to downsize it to 128M and loaded into the memory by u-boot before lauching the kernel. Otherwise the cantrip_security_coordinator will complain 'invalid magic', as shown below. This, however, is not related to the memory issue. [image: image] https://user-images.githubusercontent.com/40831966/249347956-055511e1-88d7-4f46-924f-11aa31f508bf.png

— Reply to this email directly, view it on GitHub https://github.com/AmbiML/sparrow-cantrip-full/issues/10#issuecomment-1610674265, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRM7INF67OIENHZ7BE3IFDXNOVZZANCNFSM6AAAAAAYLD2R5Q . You are receiving this because you commented.Message ID: @.***>

lopzek commented 1 year ago

Yes stock seL4test run well. Another observation is that if I switch CAPDL_LOADER_APP to capdl-loader-app instead of cantrip-os-rootserver, both the physical device and the QEMU behaves the same like below. My understanding is that if I use capdl-loader-app as the root task, the whole system basicly has nothing to do with cantripOS. This also explains why seL4test runs because its not using cantrip-os-rootserver. image

sleffler commented 1 year ago

Your issue appears to be related to the MemoryManager allocating memory from the untyped pool. This happens after the rootserver runs. sel4test does exercise allocating memory from the untyped pool but is not directly comparable. This could be an issue in the kernel in how it sets up rootserver memory so that it can be reclaimed by the MemoryManager (but that's a total guess). You can probably rule that out by commenting out the code that revokes untyped memory at startup of the MemoryManager.

Our kernel lags upstream but I just diff'd it and don't see any changes that might matter (but it was a quick scan).

What board is this? Maybe share a url to the product (or documentation)?

On Wed, Jun 28, 2023 at 11:03 PM lopzek @.***> wrote:

Yes stock seL4test run well. Another observation is that if I switch CAPDL_LOADER_APP to capdl-loader-app instead of cantrip-os-rootserver, both the physical device and the QEMU behaves the same like below. My understanding is that if I use capdl-loader-app as the root task, the whole system basicly has nothing to do with cantripOS. This also explains why seL4test runs because its not using cantrip-os-rootserver. [image: image] https://user-images.githubusercontent.com/40831966/249686030-1c6fbf56-7328-4fbf-b6d6-4bb9d0570336.png

— Reply to this email directly, view it on GitHub https://github.com/AmbiML/sparrow-cantrip-full/issues/10#issuecomment-1612475275, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRM7IO7CJMLJKNWAOBXAN3XNULBPANCNFSM6AAAAAAYLD2R5Q . You are receiving this because you commented.Message ID: @.***>

sleffler commented 1 year ago

BTW while there is no uart driver for your platform you can still use the kernel to do simple things; e..g.

fn puts(msg: &str) { for b in msg..as_byytes() { unsafe { sel4_sys::seL4_DebugPutChar(*b); } } }

(assuming sel4_sys is in scope) lets you print strings to the console, e.g.

puts("made it here\n");

If you have a heap setup then you can use format! to do printf-style printing; e..g.

extern crate alloc; puts(&alloc::format!("v = {}\n", v));

(modulo any typos)

On Thu, Jun 29, 2023 at 8:56 AM Sam Leffler @.***> wrote:

Your issue appears to be related to the MemoryManager allocating memory from the untyped pool. This happens after the rootserver runs. sel4test does exercise allocating memory from the untyped pool but is not directly comparable. This could be an issue in the kernel in how it sets up rootserver memory so that it can be reclaimed by the MemoryManager (but that's a total guess). You can probably rule that out by commenting out the code that revokes untyped memory at startup of the MemoryManager.

Our kernel lags upstream but I just diff'd it and don't see any changes that might matter (but it was a quick scan).

What board is this? Maybe share a url to the product (or documentation)?

On Wed, Jun 28, 2023 at 11:03 PM lopzek @.***> wrote:

Yes stock seL4test run well. Another observation is that if I switch CAPDL_LOADER_APP to capdl-loader-app instead of cantrip-os-rootserver, both the physical device and the QEMU behaves the same like below. My understanding is that if I use capdl-loader-app as the root task, the whole system basicly has nothing to do with cantripOS. This also explains why seL4test runs because its not using cantrip-os-rootserver. [image: image] https://user-images.githubusercontent.com/40831966/249686030-1c6fbf56-7328-4fbf-b6d6-4bb9d0570336.png

— Reply to this email directly, view it on GitHub https://github.com/AmbiML/sparrow-cantrip-full/issues/10#issuecomment-1612475275, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRM7IO7CJMLJKNWAOBXAN3XNULBPANCNFSM6AAAAAAYLD2R5Q . You are receiving this because you commented.Message ID: @.***>

lopzek commented 1 year ago

I'm using a Raspberry PI 3 Model B+, which I believe is the only board supported besides sparrow. board details here. seL4 has official tutorials on booting the kernel but they are booting a 32bit build. Since cantripOS only support 64bit I followed the method here(https://retout.co.uk/2020/05/11/sel4-on-rpi3-aarch64/). Could there be an offical tutorial on booting cantripOS on rpi3 board?

sleffler commented 1 year ago

Thanks for the pointers to documentation. I don't have any raspi hardware so any "official tutorial" needs to be contributed. In theory any aarch64-based system should be straightforward to use; I just chose "rpi3" as a target that had qemu support. Other targets should be doable though riscv is problematic because we didn't preserve the existing SBI-based riscv support in the kernel.

On Thu, Jun 29, 2023 at 6:31 PM lopzek @.***> wrote:

I'm using a Raspberry PI 3 Model B+, which I believe is the only board supported besides sparrow. board details here. https://www.raspberrypi.com/documentation/computers/raspberry-pi.html seL4 has official tutorials https://docs.sel4.systems/Hardware/Rpi3.html on booting the kernel but they are booting a 32bit build. Since cantripOS only support 64bit I followed the method here( https://retout.co.uk/2020/05/11/sel4-on-rpi3-aarch64/). Could there be an offical tutorial on booting cantripOS on rpi3 board?

— Reply to this email directly, view it on GitHub https://github.com/AmbiML/sparrow-cantrip-full/issues/10#issuecomment-1613991499, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRM7IPAP57NISD5C4DX6LTXNYT63ANCNFSM6AAAAAAYLD2R5Q . You are receiving this because you commented.Message ID: @.***>

sleffler commented 1 year ago

[sitting at the sel4 summit so have time to revisit this :)]

I assume from your silence you never figured this out?

On Thu, Jun 29, 2023 at 9:07 PM Sam Leffler @.***> wrote:

Thanks for the pointers to documentation. I don't have any raspi hardware so any "official tutorial" needs to be contributed. In theory any aarch64-based system should be straightforward to use; I just chose "rpi3" as a target that had qemu support. Other targets should be doable though riscv is problematic because we didn't preserve the existing SBI-based riscv support in the kernel.

On Thu, Jun 29, 2023 at 6:31 PM lopzek @.***> wrote:

I'm using a Raspberry PI 3 Model B+, which I believe is the only board supported besides sparrow. board details here. https://www.raspberrypi.com/documentation/computers/raspberry-pi.html seL4 has official tutorials https://docs.sel4.systems/Hardware/Rpi3.html on booting the kernel but they are booting a 32bit build. Since cantripOS only support 64bit I followed the method here( https://retout.co.uk/2020/05/11/sel4-on-rpi3-aarch64/). Could there be an offical tutorial on booting cantripOS on rpi3 board?

— Reply to this email directly, view it on GitHub https://github.com/AmbiML/sparrow-cantrip-full/issues/10#issuecomment-1613991499, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRM7IPAP57NISD5C4DX6LTXNYT63ANCNFSM6AAAAAAYLD2R5Q . You are receiving this because you commented.Message ID: @.***>