For what it's worth, I've used gdb pretty extensively in debugging
multithreaded code on RedHat 9. I'm not sure what version of gdb it
was; it was whatever came with RedHat, although I did upgrade to a
more recent version of glibc to fix some pthreads errors.
gdb worked pretty well for me. Sometimes it had difficulties, and
occasionally would crash or give errors on every command (so that even
"quit" did not work). It wasn't perfect, but overall it worked well
Perhaps you have a different, buggier version of gdb than I had. Or
maybe you need to upgrade to the latest glibc.