[OpenAFS-devel] Re: segfault in process.c:savecontext() during lwp init -- how to debug?

Adam Megacz megacz@hcoop.net
Mon, 29 Jun 2009 23:01:45 -0700


Jeffrey Altman <jaltman@secure-endpoints.com> writes:
> Should libnss_afs.so be built with the LWP package or the pthread
> package?  You are currently building it with LWP.  Is it being
> loaded into a pthread process?

Ah, forgive me -- clearly I have made a mistake.  I thought that the
LWP-vs-pthreads choice was made once-and-for-all at the time that the
openafs libraries get compiled.  How do I select between LWP and
pthreads?  If I omit the "-llwp" during linking I wind up with a bunch
of unresolved symbols (LWP_XXX) that only seem to appear in liblwp.a
and nowhere else...

Also, if I choose to "build it with the pthread package", will
problems arise when some other program which was "built with the LWP
package" loads my shared library (keeping in mind that at the moment I
am linking all the AFS libraries statically)?  For example, this would
happen if some userland AFS tool were to invoke getpwnam() when nscd
wasn't running.

Of course, using nscd avoids all these problems, which is why I urge
that it always be used with libnss-afs.  Still, I'd like to remain
sure that things work cleanly even when nscd isn't running.

Thanks again!

  - a