ALLOCATE_LOCAL has caused trouble since XDarwin's earliest days. (Symptom then: remotely run Solaris Netscape on some golfing web page, then select all. Crash while filling some very large number of rectangles.) The problem can be simple stack overflow, or exceeding the maximum single stack frame. (The latter may only be a problem on ppc with old versions of gcc.)
I see that the Xserver thread is using the default pthread stack size, only 500K. Boosting that to 8MB (matching the stack size for the main thread) would help, but you'll still probably have pathological cases. Linux gets to grow its stack until it runs into some other allocation, so it can cope better with alloca(bignum).
Eh, well... that digging was sure quick... Thanks Greg =)
Still, 900KB? How big of an arc was it trying to draw?
Keep in mind, this might just be the straw that broke the camel's back. We might have some alloc(big) lower in the stack.