RFR (S) 8218140: Build failures after JDK-8218041 (Assorted wrong/missing includes)
Aleksey Shipilev
shade at redhat.com
Thu Jan 31 12:40:24 UTC 2019
AArch64 has "special" relationship with thread.inline.hpp -- JavaThread::thread_state() is defined
as such:
src/hotspot/share/runtime/thread.inline.hpp:
#if defined(PPC64) || defined (AARCH64)
inline JavaThreadState JavaThread::thread_state() const {
return (JavaThreadState) OrderAccess::load_acquire((volatile jint*)&_thread_state);
}
inline void JavaThread::set_thread_state(JavaThreadState s) {
OrderAccess::release_store((volatile jint*)&_thread_state, (jint)s);
}
#endif
Which does break aarch64 every once in a while:
https://bugs.openjdk.java.net/browse/JDK-8216591
https://bugs.openjdk.java.net/browse/JDK-8203278
https://bugs.openjdk.java.net/browse/JDK-8201799
...and shared files have to include that thread.inline.hpp then.
-Aleksey
On 1/31/19 1:32 PM, David Holmes wrote:
> cc'ing Robbin.
>
> I can understand the Aaarch64 specific file may have an issue but I don't see how we can still have
> shared files that need changing.
>
> ???
>
> David
>
> On 31/01/2019 10:26 pm, Aleksey Shipilev wrote:
>> Bug:
>> https://bugs.openjdk.java.net/browse/JDK-8218140
>>
>> Fix:
>> http://cr.openjdk.java.net/~shade/8218140/webrev.01/
>>
>> Testing: Linux {x86_64, aarch64} compilation
>>
>> Maybe some other platforms are failing too? I would be happy to fold their fixes into this patch. So
>> far I see only AArch64 is broken.
>>
>> -Aleksey
>>
More information about the hotspot-dev
mailing list