Quantcast

[10] RFR (XS): 8159734: Consistency check fails with -XX:-ProfileInterpreter

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[10] RFR (XS): 8159734: Consistency check fails with -XX:-ProfileInterpreter

Zoltán Majó
Hi,


please review the fix for 8159734.

https://bugs.openjdk.java.net/browse/JDK-8159734
http://cr.openjdk.java.net/~zmajo/8159734/webrev.00/

If run with -XX:-ProfileInterpreter, the VM crashes due to the failure
of the assert at [1]. The reason for the failure is that the operations
ensuring the consistency of profiling data [2] are performed only with
interpreter profiling enabled.

Even if interpreter profiling is disabled, there can be one recorded
type for a call instruction (morphism == 1) with count > 0. The reason
is that the C1 compiler not only records the type but also increments
the counter (e.g., see LIR_Assembler::emit_profile_call()).

The fix ensures that the consistency of profiling data is performed also
with -XX:-ProfileInterpreter.

Fix tested with JPRT, RBT testing is in progress.

Thank you!

Best regards,


Zoltan

[1]
http://hg.openjdk.java.net/jdk10/hs/hotspot/file/5e709f10c2a4/src/share/vm/ci/ciMethod.cpp#l540
[2]
http://hg.openjdk.java.net/jdk10/hs/hotspot/file/5e709f10c2a4/src/share/vm/ci/ciMethod.cpp#l507
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [10] RFR (XS): 8159734: Consistency check fails with -XX:-ProfileInterpreter

Vladimir Kozlov
Looks good.

To all. I think we need to track all deferred (and new) bugs we fixed only in jdk 10 to remember to backport (if needed)
them into 9 update. May be listing 9 in 'Affected version' is enough?

Thanks,
Vladimir

On 3/10/17 5:55 AM, Zoltán Majó wrote:

> Hi,
>
>
> please review the fix for 8159734.
>
> https://bugs.openjdk.java.net/browse/JDK-8159734
> http://cr.openjdk.java.net/~zmajo/8159734/webrev.00/
>
> If run with -XX:-ProfileInterpreter, the VM crashes due to the failure of the assert at [1]. The reason for the failure
> is that the operations ensuring the consistency of profiling data [2] are performed only with interpreter profiling
> enabled.
>
> Even if interpreter profiling is disabled, there can be one recorded type for a call instruction (morphism == 1) with
> count > 0. The reason is that the C1 compiler not only records the type but also increments the counter (e.g., see
> LIR_Assembler::emit_profile_call()).
>
> The fix ensures that the consistency of profiling data is performed also with -XX:-ProfileInterpreter.
>
> Fix tested with JPRT, RBT testing is in progress.
>
> Thank you!
>
> Best regards,
>
>
> Zoltan
>
> [1] http://hg.openjdk.java.net/jdk10/hs/hotspot/file/5e709f10c2a4/src/share/vm/ci/ciMethod.cpp#l540
> [2] http://hg.openjdk.java.net/jdk10/hs/hotspot/file/5e709f10c2a4/src/share/vm/ci/ciMethod.cpp#l507
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [10] RFR (XS): 8159734: Consistency check fails with -XX:-ProfileInterpreter

Tobias Hartmann-2
Hi Vladimir,

On 10.03.2017 19:05, Vladimir Kozlov wrote:
> To all. I think we need to track all deferred (and new) bugs we fixed only in jdk 10 to remember to backport (if needed) them into 9 update. May be listing 9 in 'Affected version' is enough?

Yes, we should list 9 as affected version and maybe also add the '9-bp' label if we think that a backport is necessary.

Thanks,
Tobias
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [10] RFR (XS): 8159734: Consistency check fails with -XX:-ProfileInterpreter

Zoltán Majó
In reply to this post by Vladimir Kozlov
Thank you for the review, Vladimir!

Best regards,


Zoltan

On 03/10/2017 07:05 PM, Vladimir Kozlov wrote:

> Looks good.
>
> To all. I think we need to track all deferred (and new) bugs we fixed
> only in jdk 10 to remember to backport (if needed) them into 9 update.
> May be listing 9 in 'Affected version' is enough?
>
> Thanks,
> Vladimir
>
> On 3/10/17 5:55 AM, Zoltán Majó wrote:
>> Hi,
>>
>>
>> please review the fix for 8159734.
>>
>> https://bugs.openjdk.java.net/browse/JDK-8159734
>> http://cr.openjdk.java.net/~zmajo/8159734/webrev.00/
>>
>> If run with -XX:-ProfileInterpreter, the VM crashes due to the
>> failure of the assert at [1]. The reason for the failure
>> is that the operations ensuring the consistency of profiling data [2]
>> are performed only with interpreter profiling
>> enabled.
>>
>> Even if interpreter profiling is disabled, there can be one recorded
>> type for a call instruction (morphism == 1) with
>> count > 0. The reason is that the C1 compiler not only records the
>> type but also increments the counter (e.g., see
>> LIR_Assembler::emit_profile_call()).
>>
>> The fix ensures that the consistency of profiling data is performed
>> also with -XX:-ProfileInterpreter.
>>
>> Fix tested with JPRT, RBT testing is in progress.
>>
>> Thank you!
>>
>> Best regards,
>>
>>
>> Zoltan
>>
>> [1]
>> http://hg.openjdk.java.net/jdk10/hs/hotspot/file/5e709f10c2a4/src/share/vm/ci/ciMethod.cpp#l540
>> [2]
>> http://hg.openjdk.java.net/jdk10/hs/hotspot/file/5e709f10c2a4/src/share/vm/ci/ciMethod.cpp#l507

Loading...