[OpenAFS] Re: AFS Perl module and threaded Perl

Norbert Gruener nog@MPA-Garching.MPG.DE
Wed, 1 Dec 2004 13:42:35 +0100


Hi Russ,

On Wed, Dec 01 2004, Russ Allbery wrote:
> I'd really like to use the AFS Perl module in a few more places than I'm
> using it now, including on Debian systems where we're using the Debian
> Perl.  The problem is that Debian Perl is built with threading support,
> which the AFS Perl module apparently doesn't support.

this is correct for the AFS::VOS, AFS::VLDB, and AFS::PTS modules.

> This is apparently a known issue that's even been localized.  Could
> someone fill me in on what the conflict is?  A Google search turned up the
> documentation that it didn't work, but not details on exactly why not.

Here is my description which I had sent to some users of my module.

------------------------ problem description -------------------------
And this is the outcome.  Perl in the "thread" version is linked
against the "libpthread" system library.  Therefore it gets the
"thread" version of the system calls (in our case "longjmp").  Whereas
OpenAFS is using its "own threading" package (called LWP).  And these
two things are not compatible.

I could prove that by linking the OpenAFS "vos" binary against the
"libpthread".  Then the "vos" binary crashed exactly on the same
statement as the Perl AFS module.

The final conclusion of this case is that "as long as OpenAFS is using
its own threading, it is not possible to use Perl with 'threading'".
------------------------ problem description -------------------------

If it is not clear enough or if you need more details, please let me know.

> I'm willing to do some work to try to get this fixed, as this is really
> causing a problem for us at the moment.

I am also very interested to fix that problem.  So if you can think of
any solution, just let know.

Cheers,

Norbert
-- 
Ceterum censeo          | PGP encrypted mail preferred.
Redmond esse delendam.  | PGP Key at www.MPA-Garching.MPG.de/~nog/