Build failure on Fedora 28
Yasumasa Suenaga
yasuenag at gmail.com
Tue May 15 14:56:43 UTC 2018
Hi Severin,
> Looks like another case of UB in the JDK. This time libjimage.so with a
> signed integer overflow:
>
> https://bugs.openjdk.java.net/browse/JDK-8203223
Thanks!
Can you fix pointer increment issue (I reported) at the same time?
Yasumasa
On 2018/05/15 23:07, Severin Gehwolf wrote:
> Hi,
>
> On Fri, 2018-05-11 at 12:55 +0900, Yasumasa Suenaga wrote:
>> Hi,
>>
>> I found 1 GCC optimization issue, but it is not enough.
>>
>> http://cr.openjdk.java.net/~ysuenaga/openjdk-fc28/gcc8-opt/gdb-before.txt
>>
>> I traced class loading from `modules`. Above log is copy of GDB
>> console in ImageFileReader::verify_location().
>> The code expects `*next++` increments after referring the value, but
>> it do not so.
>>
>> Thus I fixed the code as following changeset:
>> http://cr.openjdk.java.net/~ysuenaga/openjdk-fc28/gcc8-opt/wip.00/
>>
>> It passes module name check, but it fails parent (package name) check.
>> GDB log is here:
>> http://cr.openjdk.java.net/~ysuenaga/openjdk-fc28/gcc8-opt/gdb-after.txt
>>
>> I guess the value of parent should be `java/lang`, but it sets to
>> `sun/refrect/generics/factory`.
>> Do you have anything to think about?
>
> The problematic library was indeed libjimage.so. More below.
>
>> 2018-05-09 17:22 GMT+09:00 Severin Gehwolf <sgehwolf at redhat.com>:
>>> Hi,
>>>
>>> Note that slowdebug builds work:
>>>
>>> $ ./build/linux-x86_64-normal-server-slowdebug/images/jdk/bin/java -version
>>> openjdk version "11-internal" 2018-09-25
>>> OpenJDK Runtime Environment (slowdebug build 11-internal+0-adhoc.sgehwolf.openjdk-hs)
>>> OpenJDK 64-Bit Server VM (slowdebug build 11-internal+0-adhoc.sgehwolf.openjdk-hs, mixed mode)
>>>
>>> In summary we have:
>>>
>>> * Build fails with fastdebug/release debug config (-O3)
>>> * Build succeeds with slowdebug (-O0)
>>> * F28 has GCC 8
>>> * Older GCC-based builds continue to work for fastdebug/release config
>>>
>>> * JDK 10.0.1 builds fine with GCC 8.
>>>
>>> So far showing all symptoms of either a GCC bug or some UB in recent
>>> OpenJDK code which breaks with new optimizations done in GCC 8.
>>>
>>> I'll continue to investigate what it is...
>
> Looks like another case of UB in the JDK. This time libjimage.so with a
> signed integer overflow:
>
> https://bugs.openjdk.java.net/browse/JDK-8203223
>
> Thanks,
> Severin
>
More information about the build-dev
mailing list