Subject: Re: XFree dynamic loader
To: Michael <>
From: Nathan J. Williams <>
List: tech-x11
Date: 03/29/2005 14:07:45
Michael <> writes:

> > From the stack trace you've posted, though, it looks like the X server
> > is calling pthread_sigmask() from a call chain inside a signal
> > handler, and that's just not going to work.

> Hmm, stupid question - is this NetBSD-specific?

That it's not guaranteed to work ("invokes undefined behavior") is
standardized by POSIX. It may happen to work, or usually happen to
work, in other operating systems.

> Could this confuse the kernel enough to keep it from rebooting?

It shouldn't. This should essentially produce a process spinning in
userland on a spinlock.

> If it is I'll see if I can get rid of this SIGIO stuff, it doesn't
> look like anyone really uses it for anything good anyway. I think
> the signal handler is called because of some mucked up function
> pointer and the server ends up in the SIGIO handler more or less by
> accident.

That sounds very bad.

        - Nathan