> I took a look at the backtrace as well, and of the 3800 calls on the list,
> ~3700 of them are from either mark_object or mark_vectorlike.
Are you sure it is hung, and not in some very long GC? I see nothing
wrong in the backtrace you sent, it just shows that Emacs is
collecting garbage. Lots of it. It is not unusual for GC to have
tens of thousands of recursive calls to mark_object, because GC is
highly recursive.
> I'm not sure what else to do (I'm not familiar with emacs c code at all),
> but I can keep the hung emacs running in the debugger pretty much
> indefinitely if that's useful.
If you leave it running, does it eventually recover and become
responsive again? Or does it keep being stuck forever?