luaL_traceback() calls findfield(), and it's a recursion function.
The max level of findfield() is 2 now, so it could not consume too much lua stack.
Sorry for the noise.
btw, I still need to call luaL_checkstack() before luaL_traceback() to reserve enough stack space.