Re: [PATCH] parisc: futex: Use same lock set as lws calls

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 17-Oct-11, at 2:10 PM, John David Anglin wrote:


The cancellation issues happen in tst-cancel*.

I believe the cancellation issues are toolchain issues and I need to
look into them.
Possibly, this is related to the following bug that I found last week building mpfr-3.1.0:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50691
A call to __tls_get_addr clobbers first argument of call to mpfr_cache. Don't have a
fix at the moment, but there is a simple testcase.

I looked at this a bit. The problem is legitimize_tls_address doesn't work properly. First, GCC doesn't know that the libcall needs r26 and ret0 when the __thread variable is an argument to a call. Secondly, the implementation of __tls_get_addr clobbers some other call clobbered registers. I'm thinking the glibc implementation might need to be in assembly language so that the clobbered registers are limited (i.e., it needs to
save registers).   This all seems really ugly...

The issues occur in generating PIC code.

Thoughts?

Dave
--
John David Anglin	dave.anglin@xxxxxxxx



--
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux