[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-serviceability-dev
Subject:    Re: RFR 8087315: SIGBUS error in nsk/jvmti/RedefineClasses/StressRedefine
From:       Coleen Phillimore <coleen.phillimore () oracle ! com>
Date:       2015-07-23 15:34:03
Message-ID: 55B1096B.8000705 () oracle ! com
[Download RAW message or body]

Thank you Serguei.  I'll fix the indentation to 4 since that's the 
coding style for Java (I like 2 better!)

Coleen

On 7/23/15 8:30 AM, serguei.spitsyn@oracle.com wrote:
> The fix is good.
> Nice test!
> 
> A couple of places with indent 2:
> 78         static void localSleep() {
> 79           try{
> 80             Thread.currentThread().sleep(10);//sleep for 10 ms
> 81           } catch(InterruptedException ie) {
> 82           }
> 83         }
> 
> 119         for (int i = 0; i < stackTrace.length; i++) {
> 120           StackTraceElement frame = stackTrace[i];
> 121           if (frame.getClassName() == null) {
> 122               System.out.println("\nTest failed: trace[" + i + \
> "].getClassName() returned null"); 123           }
> 124           if (frame.getMethodName() == null) {
> 125               System.out.println("\nTest failed: trace[" + i + \
> "].getMethodName() returned null"); 126           }
> 127         }
> 
> Thank you a lot for fixing this issue!
> 
> Thanks,
> Serguei
> 
> 
> 
> On 7/23/15 4:57 AM, serguei.spitsyn@oracle.com wrote:
> > Hi Coleen,
> > 
> > 
> > On 7/23/15 4:49 AM, Coleen Phillimore wrote:
> > > 
> > > Hi Serguei,
> > > 
> > > On 7/23/15 2:35 AM, serguei.spitsyn@oracle.com wrote:
> > > > Coleen,
> > > > 
> > > > The fix looks good in general.
> > > > There is one more place where the same may need to be fixed.
> > > > It is in the function java_lang_StackTraceElement::create ():
> > > > 1911     // Fill in source file name and line number.
> > > > 1912     // Use specific ik version as a holder since the mirror might
> > > > 1913     // refer to version that is now obsolete and no longer accessible
> > > > 1914     // via the previous versions list.
> > > > 1915     holder = holder->get_klass_version(version);
> > > > 1916     assert(holder != NULL, "sanity check");
> > > > 1917     Symbol* source = holder->source_file_name();
> > > > 
> > > 
> > > I did change both places, I think you're looking at the old 
> > > version.   java_lang_StackTraceElement::create() was where the crash 
> > > was.
> > > thanks for getting to this so quickly.
> > 
> > You are right, sorry.
> > I've overlooked the second place.
> > It is because both fragments look similar.
> > It is nice that you have fixed them both!
> > Still reviewing the test.
> > 
> > Thanks,
> > Serguei
> > 
> > > Coleen
> > > 
> > > 
> > > > I'm still reviewing the test.
> > > > 
> > > > Thanks,
> > > > Serguei
> > > > 
> > > > 
> > > > On 7/22/15 10:22 AM, Coleen Phillimore wrote:
> > > > > Summary: Need to get source_file_name from the_class's constant 
> > > > > pool not previous version constant pool
> > > > > 
> > > > > open webrev at http://cr.openjdk.java.net/~coleenp/8087315.01/
> > > > > bug link https://bugs.openjdk.java.net/browse/JDK-8087315
> > > > > 
> > > > > Tested with added test (yay!), RBT (remote build and test), 
> > > > > vm.redefine.testlist, jdk/test/java/lang/instrument and failing 
> > > > > testcase 1000 times (reproduced <400).
> > > > > 
> > > > > Thanks,
> > > > > Coleen
> > > > 
> > > 
> > 
> 


[Attachment #3 (text/html)]

<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    Thank you Serguei.   I'll fix the indentation to 4 since that's the
    coding style for Java (I like 2 better!)<br>
    <br>
    Coleen<br>
    <br>
    <div class="moz-cite-prefix">On 7/23/15 8:30 AM,
      <a class="moz-txt-link-abbreviated" \
href="mailto:serguei.spitsyn@oracle.com">serguei.spitsyn@oracle.com</a> wrote:<br>  \
</div>  <blockquote cite="mid:55B0DE6C.9030601@oracle.com" type="cite">
      <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
      <div class="moz-cite-prefix">The fix is good.<br>
        Nice test!<br>
        <br>
        A couple of places with indent 2:<br>
        <meta http-equiv="content-type" content="text/html;
          charset=utf-8">
        <pre>  78         static void localSleep() {
  79           try{
  80             Thread.currentThread().sleep(10);//sleep for 10 ms
  81           } catch(InterruptedException ie) {
  82           }
  83         }

<meta http-equiv="content-type" content="text/html; charset=utf-8"> 119         for \
(int i = 0; i &lt; stackTrace.length; i++) {  120           StackTraceElement frame = \
stackTrace[i];  121           if (frame.getClassName() == null) {
 122               System.out.println("\nTest failed: trace[" + i + "].getClassName() \
returned null");  123           }
 124           if (frame.getMethodName() == null) {
 125               System.out.println("\nTest failed: trace[" + i + \
"].getMethodName() returned null");  126           }
 127         }

</pre>
        Thank you a lot for fixing this issue!<br>
        <br>
        Thanks,<br>
        Serguei<br>
        <br>
        <br>
        <br>
        On 7/23/15 4:57 AM, <a moz-do-not-send="true"
          class="moz-txt-link-abbreviated"
          href="mailto:serguei.spitsyn@oracle.com">serguei.spitsyn@oracle.com</a>
        wrote:<br>
      </div>
      <blockquote cite="mid:55B0D6C1.8000503@oracle.com" type="cite">
        <meta content="text/html; charset=utf-8"
          http-equiv="Content-Type">
        <div class="moz-cite-prefix">Hi Coleen,<br>
          <br>
          <br>
          On 7/23/15 4:49 AM, Coleen Phillimore wrote:<br>
        </div>
        <blockquote cite="mid:55B0D4C6.8060303@oracle.com" type="cite">
          <meta content="text/html; charset=utf-8"
            http-equiv="Content-Type">
          <br>
          Hi Serguei,<br>
          <br>
          <div class="moz-cite-prefix">On 7/23/15 2:35 AM, <a
              moz-do-not-send="true" class="moz-txt-link-abbreviated"
              href="mailto:serguei.spitsyn@oracle.com">serguei.spitsyn@oracle.com</a>
            wrote:<br>
          </div>
          <blockquote cite="mid:55B08B34.7080707@oracle.com" type="cite">
            <meta content="text/html; charset=utf-8"
              http-equiv="Content-Type">
            <div class="moz-cite-prefix">Coleen,<br>
              <br>
              The fix looks good in general.<br>
              There is one more place where the same may need to be
              fixed.<br>
              It is in the function java_lang_StackTraceElement::create
              <meta http-equiv="content-type" content="text/html;
                charset=utf-8">
              ():<br>
              <meta http-equiv="content-type" content="text/html;
                charset=utf-8">
              <pre>1911     // Fill in source file name and line number.
<span class="new">1912     // Use specific ik version as a holder since the mirror \
might</span> <span class="new">1913     // refer to version that is now obsolete and \
no longer accessible</span> <span class="new">1914     // via the previous versions \
list. </span> <span class="new">1915     holder = \
holder-&gt;get_klass_version(version);</span> <span class="new">1916     \
assert(holder != NULL, "sanity check");</span> 1917     Symbol* source = \
holder-&gt;source_file_name();</pre>  <br>
            </div>
          </blockquote>
          <br>
          I did change both places, I think you're looking at the old
          version.     java_lang_StackTraceElement::create() was where the
          crash was.<br>
          thanks for getting to this so quickly.<br>
        </blockquote>
        <br>
        You are right, sorry.<br>
        I've overlooked the second place.<br>
        It is because both fragments look similar.<br>
        It is nice that you have fixed them both!<br>
        Still reviewing the test.<br>
        <br>
        Thanks,<br>
        Serguei<br>
        <br>
        <blockquote cite="mid:55B0D4C6.8060303@oracle.com" type="cite">
          Coleen<br>
          <br>
          <br>
          <blockquote cite="mid:55B08B34.7080707@oracle.com" type="cite">
            <div class="moz-cite-prefix"> I'm still reviewing the test.<br>
              <br>
              Thanks,<br>
              Serguei<br>
              <br>
              <br>
              On 7/22/15 10:22 AM, Coleen Phillimore wrote:<br>
            </div>
            <blockquote cite="mid:55AFD144.9010102@oracle.com"
              type="cite">Summary: Need to get source_file_name from
              the_class's constant pool not previous version constant
              pool <br>
              <br>
              open webrev at <a moz-do-not-send="true"
                class="moz-txt-link-freetext"
                href="http://cr.openjdk.java.net/%7Ecoleenp/8087315.01/">http://cr.openjdk.java.net/~coleenp/8087315.01/</a>
  <br>
              bug link <a moz-do-not-send="true"
                class="moz-txt-link-freetext"
                href="https://bugs.openjdk.java.net/browse/JDK-8087315">https://bugs.openjdk.java.net/browse/JDK-8087315</a>
  <br>
              <br>
              Tested with added test (yay!), RBT (remote build and
              test), vm.redefine.testlist, jdk/test/java/lang/instrument
              and failing testcase 1000 times (reproduced &lt;400). <br>
              <br>
              Thanks, <br>
              Coleen <br>
            </blockquote>
            <br>
          </blockquote>
          <br>
        </blockquote>
        <br>
      </blockquote>
      <br>
    </blockquote>
    <br>
  </body>
</html>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic