[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-serviceability-dev
Subject: Re: RFR (S) 8205608: Fix 'frames()' in ThreadReferenceImpl.c to prevent quadratic runtime behavior
From: Volker Simonis <volker.simonis () gmail ! com>
Date: 2018-07-26 9:43:34
Message-ID: CA+3eh10uNj_oS39-oDOhMDupVKw3Mddm8NpwWVtMgxBwjUbNSg () mail ! gmail ! com
[Download RAW message or body]
Oh my good!
And I've also forgot to add Ralf as a Contributer :(:(:(
I really desperately need a vacation!
Sorry Ralf,
Volker
On Thu, Jul 26, 2018 at 11:36 AM, Volker Simonis
<volker.simonis@gmail.com> wrote:
> Hi Sergey,
>
> thanks for your help, but I've just pushed the fix now.
>
> @Thomas: sorry, I really apologize, but I've just realized that I've
> forgot to add you as a Reviewer :( I'll promise to look more carefully
> next time.
>
> Regards,
> Volker
>
>
> On Tue, Jul 24, 2018 at 6:01 PM, serguei.spitsyn@oracle.com
> <serguei.spitsyn@oracle.com> wrote:
> > Hi Ralf,
> >
> > I think, you have to consider it reviewed.
> > Sorry, I was not clear no new webrev is needed.
> >
> > Do you need a sponsor for the push?
> >
> > Thanks,
> > Serguei
> >
> >
> >
> > On 7/24/18 06:32, Schmelter, Ralf wrote:
> > >
> > > Hi all,
> > >
> > > here is the update webref with the fixed copyright:
> > > http://cr.openjdk.java.net/~simonis/webrevs/2018/8205608.v5/
> > >
> > > Best regards,
> > > Ralf
> > >
> > > -----Original Message-----
> > > From: serguei.spitsyn@oracle.com [mailto:serguei.spitsyn@oracle.com]
> > > Sent: Freitag, 20. Juli 2018 23:04
> > > To: Chris Plummer <chris.plummer@oracle.com>; Schmelter, Ralf
> > > <ralf.schmelter@sap.com>; serviceability-dev@openjdk.java.net; Stuefe,
> > > Thomas <thomas.stuefe@sap.com>
> > > Subject: Re: RFR (S) 8205608: Fix 'frames()' in ThreadReferenceImpl.c to
> > > prevent quadratic runtime behavior
> > >
> > > On 7/20/18 13:44, Chris Plummer wrote:
> > > >
> > > > On 7/20/18 1:40 PM, serguei.spitsyn@oracle.com wrote:
> > > > >
> > > > > Hi Ralf,
> > > > >
> > > > >
> > > > > On 7/20/18 07:28, Schmelter, Ralf wrote:
> > > > > >
> > > > > > Hi Sergue,
> > > > > >
> > > > > > I've updated the webref:
> > > > > > http://cr.openjdk.java.net/~simonis/webrevs/2018/8205608.v4/
> > > > >
> > > > > The copyright year in ThreadReferenceImpl.c still has to be 2018, not
> > > > > 2008.
> > > > >
> > > > >
> > > > > http://cr.openjdk.java.net/~simonis/webrevs/2018/8205608.v4/test/jdk/com/sun/jdi/Frames2Test.java.html
> > > > >
> > > > >
> > > > > 72 if (newDepth == -1_000) {
> > > > > 73 // Pop some frames so there is room on the stack
> > > > > for the
> > > > > 74 // call (including println()).
> > > > > 75 notifyRecursionEnded();
> > > > > 76 }
> > > > >
> > > > > I have a concern on potential issue mentioned in the comment above.
> > > > > Should a StackOverflowError be expected here?
> > > > >
> > > > > 79 } catch (StackOverflowError e) {
> > > > > 80 // Use negative depth to indicate the recursion has
> > > > > ended.
> > > > > 81 return -1;
> > > > > 82 }
> > > > >
> > > > > What is going to happen if the StackOverflowError was really caught
> > > > > above?
> > > >
> > > > The SOE is really caught in the above code. I returns -1, and starts
> > > > the unwinding of the stack. After 1000 frames have been popped via
> > > > returns, notifyRecursionEnded() will be called. The pops are so
> > > > notifyRecursionEnded() can be called without worry of another SOE.
> > >
> > > Got it, thanks Chris.
> > >
> > > So, I'm Okay with the fix assuming the copyright year is fixed.
> > >
> > > Thanks,
> > > Serguei
> >
> >
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic