The user stack.
> getg can return the current g but when executing on the system stack it returns the current M's g0.
>
> I assume that a true means we're on the user stack because it says "To get the current user g, use getg().m.curg". However, there's no where that I can see that says that m.curg can't be the system stack, so please clarify.
As it says, getg().m.curg is the current user g. It's never a g0. A
g0 is never a user g. Each g has its own stack. A g0 has a fixed
system thread stack, a user g has a Go-managed user stack.
Ian