RFR: 8257794: Zero: assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1) failed: wrong on Linux/x86_32
Jie Fu
jiefu at openjdk.java.net
Mon Dec 7 12:06:14 UTC 2020
On Mon, 7 Dec 2020 07:56:36 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>>> Hold on a sec, I meant to see why the assert is there, and why it is in that form, and why it is `IA32_ONLY`. It should either be a generic assert (if it is good assert), or removed completely (if it is a superfluous assert). Code history should reveal the answer to that...
>>
>> The assert seems to be there at the creation of the OpenJDK repo.
>> It was checked in at the second commit:
>> commit 8153779ad32d1e8ddd37ced826c76c7aafc61894
>> Author: J. Duke <duke at openjdk.org>
>> Date: Sat Dec 1 00:00:00 2007 +0000
>>
>> Initial load
>>
>> I had checked the debug version of jdk8's zero on Linx/x86_32 finding that it crashed due to the same reason.
>> Maybe, the debug version of zero for x86_32 was broken at the very beginning.
>
> All right, this makes more sense to me. @dholmes-ora, could you do us a favor and see why this line: https://github.com/openjdk/jdk/blob/master/src/hotspot/share/interpreter/zero/bytecodeInterpreter.cpp#L422
>
> ...was added? We don't have access to pre-OpenJDK history to get it ourselves.
> _Mailing list message from [David Holmes](mailto:david.holmes at oracle.com) on [hotspot-runtime-dev](mailto:hotspot-runtime-dev at openjdk.java.net):_
>
> On 7/12/2020 5:59 pm, Aleksey Shipilev wrote:
>
> > On Mon, 7 Dec 2020 07:38:03 GMT, Jie Fu <jiefu at openjdk.org> wrote:
> > > > Hold on a sec, I meant to see why the assert is there, and why it is in that form, and why it is `IA32_ONLY`. It should either be a generic assert (if it is good assert), or removed completely (if it is a superfluous assert). Code history should reveal the answer to that...
> > >
> > >
> > > > Hold on a sec, I meant to see why the assert is there, and why it is in that form, and why it is `IA32_ONLY`. It should either be a generic assert (if it is good assert), or removed completely (if it is a superfluous assert). Code history should reveal the answer to that...
> > >
> > >
> > > The assert seems to be there at the creation of the OpenJDK repo.
> > > It was checked in at the second commit:
> > > commit [8153779](https://github.com/openjdk/jdk/commit/8153779ad32d1e8ddd37ced826c76c7aafc61894)
> > > Author: J. Duke <duke at openjdk.org>
> > > Date: Sat Dec 1 00:00:00 2007 +0000
> > > ```
> > > Initial load
> > > ```
> > >
> > >
> > > I had checked the debug version of jdk8's zero on Linx/x86_32 finding that it crashed due to the same reason.
> > > Maybe, the debug version of zero for x86_32 was broken at the very beginning.
> >
> >
> > All right, this makes more sense to me. @dholmes-ora, could you do us a favor and see why this line: https://github.com/openjdk/jdk/blob/master/src/hotspot/share/interpreter/zero/bytecodeInterpreter.cpp#L422
> > ...was added? We don't have access to pre-OpenJDK history to get it ourselves.
>
> It came in as part of:
>
> https://bugs.openjdk.java.net/browse/JDK-6571248
>
> but there is no additional information.
>
> Cheers,
> David
I will have a look.
Thanks.
-------------
PR: https://git.openjdk.java.net/jdk/pull/1637
More information about the hotspot-runtime-dev
mailing list