MemManage MUNSTKERR when using syscalls on Cortex M7

ChibiOS public support forum for all topics not covered by a specific support forum.

Moderators: RoccoMarco, lbednarz, tfAteba

Post Reply
bb00
Posts: 3
Joined: Tue Oct 22, 2024 2:33 pm

MemManage MUNSTKERR when using syscalls on Cortex M7

Post by bb00 »

Hi,

I am currently experimenting on the Teensy 4.1 with ChibiOS/SB.

Unluckily i get an MUNSTKERR MemManage fault when using SVCs, currently I only tested the fastcalls SVCs.

What could be the reason for that? Where should I start searching?

Thank You.
Greeting Sebastian
User avatar
Giovanni
Site Admin
Posts: 14891
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: MemManage MUNSTKERR when using syscalls on Cortex M7

Post by Giovanni »

Hi,

I imagine you are using the version on trunk, it is still quite experimental so there is not much documentation yet. It will have a manual when it will be released in 25.x.

In general, fastcall handlers are seen like fast IRQs by the RTOS, from there you can manipulate registers, operate on shared variables but not call RTOS functions. The advantage is the very low overhead compared to a full syscall.

On the other hand normal syscalls are simply code executed at thread level, you can interact with any RTOS object and other threads from there.

My objective is to make fastcalls at least able to invoke I-class functions, that should be possible I have not yet tested the scenario, some extra development would be needed.

Not sure how to help you, that error seems to indicate some kind of memory violation while unstacking Cortex-M IRQ frames, probably you are trying to call some OS function from the fastcall, if that is the case then use a syscall and it should be fine.

Giovanni
Post Reply