Re: gcj port to hppa...
> The gcj port to hppa uses a locking implementation
> (libjava/sysdeps/pa/locks.h) which is not signal safe.
Yes. Is this the gcj problem that you were seeing with nptl?
> The assembly can be interrupted by a signal which if it calls
> compare_and_swap again will deadlock. However, I can't tell if this
> will ever happen.
>
> The fix for this is to port the lock implementation to use the
> light-weight in-kernel compare-and-swap, which is thread-safe and
> signal-safe. However, this is only available for Linux.
I would say the linux implementation should uses the gcc atomic builtins.
They are based on the kernel compare-and-swap.
> Does locks.h also need to work for HPUX?
Yes.
Dave
--
J. David Anglin dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6602)
Reply to: