[Bug] Possible SIGSEGV in ASSERT block of InterpreterRuntime::resolve_ldc
Boris Ulasevich
boris.ulasevich at bell-sw.com
Wed Sep 11 08:37:18 UTC 2019
Hi Christoph,
11.09.2019 10:33, christoph.goettschkes at microdoc.com пишет:
> Hi Boris,
>
> thanks again for your help. Short questions:
>
> I executed the JTreg tests with my patch applied to see if everything else
> is still fine (in a debug VM, since the change I did is inside the ASSERT
> block). Now there are other assertions, which are failing, not because of
> my change, but because of wrong assumptions (mostly in the JIT, which has
> nothing to do with the interpreter runtime change). Is it possible to
> first submit the change for this bug and then do the other issues one by
> one, or should I first submit bug reports for all issues I found and try
> to get the JTreg to pass?
It is possible to submit changes separately. Same time I think it would
be reasonable to fix other assertions as well and then see if they
deserves separate review requests and commits or we can manage them in
one change.
> Is it even required to pass the JTreg for changes done which only affect
> the debug version of the VM?
>
> Since I can not create bugs and work with the JBS, I would like to avoid
> having multiple bugs open and working on them simultaneously.
>
> Here is the patch I applied, just for context:
>
> diff --git a/src/hotspot/share/interpreter/interpreterRuntime.cpp
> b/src/hotspot/share/interpreter/interpreterRuntime.cpp
> --- a/src/hotspot/share/interpreter/interpreterRuntime.cpp
> +++ b/src/hotspot/share/interpreter/interpreterRuntime.cpp
> @@ -201,7 +201,7 @@
> // The bytecode wrappers aren't GC-safe so construct a new one
> Bytecode_loadconstant ldc2(m, last_frame.bci());
> int rindex = ldc2.cache_index();
> - if (rindex < 0)
> + if (rindex < 0 && m->constants()->resolved_references() != NULL)
> rindex = m->constants()->cp_to_object_index(ldc2.pool_index());
> if (rindex >= 0) {
> oop coop = m->constants()->resolved_references()->obj_at(rindex);
Here is the webrev for your diff:
http://cr.openjdk.java.net/~bulasevich/8230797/webrev.01
> -- Christoph
>
> Boris Ulasevich <boris.ulasevich at bell-sw.com> wrote on 2019-09-10
> 12:55:07:
>
>> From: Boris Ulasevich <boris.ulasevich at bell-sw.com>
>> To: christoph.goettschkes at microdoc.com
>> Cc: "hotspot-runtime-dev at openjdk.java.net"
> <hotspot-runtime-dev at openjdk.java.net>
>> Date: 2019-09-10 12:55
>> Subject: Re: [Bug] Possible SIGSEGV in ASSERT block of
> InterpreterRuntime::resolve_ldc
>> Hi Christoph,
>>
>> Thanks for working on this. Here is the bug report:
>> https://bugs.openjdk.java.net/browse/JDK-8230797
>>
>> regards,
>> Boris
>>
More information about the hotspot-runtime-dev
mailing list