RFR (S) 8218140: Build failures after JDK-8218041 (Assorted wrong/missing includes)

David Holmes david.holmes at oracle.com
Fri Feb 1 05:03:06 UTC 2019


On 31/01/2019 11:09 pm, Robbin Ehn wrote:
> Looks good, thanks.
> 
> In this case I would not blame 8218041, since these file don't even had 
> thread.hpp included, the 'bug' is pre-existing.

They got thread.inline.hpp through handles.inline.hpp

But yes should be explicit.

If only there was a tool that could generate the correct set of includes 
... <ducks for cover> ;-)

David

> /Robbin
> 
> On 1/31/19 1:40 PM, Aleksey Shipilev wrote:
>> 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