Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8163574

Retransformation of AccessController causes a VM crash

    Details

      Description

      FULL PRODUCT VERSION :


      A DESCRIPTION OF THE PROBLEM :
      A valid retransformation causes a crash of the VM where this should not happen.

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Run the below code. The MultipleIdVisitor produces a crash but passes validation, the SingleIdVisitor produces no crash.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      The below code applies a retransformation. This retransformation triggers a VM crash.
      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # SIGSEGV (0xb) at pc=0x00007fe728f9bea5, pid=22405, tid=140630825596672
      #
      # JRE version: Java(TM) SE Runtime Environment (8.0_91-b14) (build 1.8.0_91-b14)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.91-b14 mixed mode linux-amd64 compressed oops)
      # Problematic frame:
      # V [libjvm.so+0x505ea5] Deoptimization::query_update_method_data(MethodData*, int, Deoptimization::DeoptReason, Method*, unsigned int&, bool&, bool&)+0x35
      #
      # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
      #
      # If you would like to submit a bug report, please visit:
      # http://bugreport.java.com/bugreport/crash.jsp
      #

      --------------- T H R E A D ---------------

      Current thread (0x00007fe72400b000): JavaThread "main" [_thread_in_vm, id=22406, stack(0x00007fe72a577000,0x00007fe72a678000)]

      siginfo: si_signo: 11 (SIGSEGV), si_code: 1 (SEGV_MAPERR), si_addr: 0x00000000000000a2

      Registers:
      RAX=0x00007fe72a67406e, RBX=0x0000000000000001, RCX=0x0000000000000000, RDX=0x0000000000000001
      RSP=0x00007fe72a673fc0, RBP=0x00007fe72a674020, RSI=0x0000000000000000, RDI=0x0000000000000001
      R8 =0x00007fe72a674068, R9 =0x00007fe72a67406f, R10=0x00007fe729a511c0, R11=0x00000000197916d2
      R12=0x0000000000000001, R13=0x00000000000003d8, R14=0x00007fe724009a00, R15=0x00007fe7240083f0
      RIP=0x00007fe728f9bea5, EFLAGS=0x0000000000010297, CSGSFS=0x0000000000000033, ERR=0x0000000000000004
        TRAPNO=0x000000000000000e

      Top of Stack: (sp=0x00007fe72a673fc0)
      0x00007fe72a673fc0: 0000000100000008 00007fe724009ab0
      0x00007fe72a673fd0: 0000034446505853 0000000000000007
      0x00007fe72a673fe0: 00007fe72a67406f 00007fe72a674068
      0x00007fe72a673ff0: 0000000000000000 0000000000000001
      0x00007fe72a674000: 00000000197916d2 00000000000003d8
      0x00007fe72a674010: 00007fe724009a00 00007fe7240083f0
      0x00007fe72a674020: 00007fe72a6740a0 00007fe728f9d8b2
      0x00007fe72a674030: 00007fe72a67406e 0000000000000000
      0x00007fe72a674040: 0000000000000000 0000000000000001
      0x00007fe72a674050: 00007fe724008400 00007fe7240087d8
      0x00007fe72a674060: 00007fe72a674080 00007fe729375d79
      0x00007fe72a674070: 00007fe72a6740b0 00007fe72a6740b0
      0x00007fe72a674080: 00007fe72a674120 00000000197916d2
      0x00007fe72a674090: 00007fe72400b000 0000000000000001
      0x00007fe72a6740a0: 00007fe72a674180 00007fe72911aa57
      0x00007fe72a6740b0: 00007fe72a6741f0 00007fe7145b7b10
      0x00007fe72a6740c0: 00007fe7145aa5d0 0000000000000000
      0x00007fe72a6740d0: 00007fe72a674230 00007fe72a6741f0
      0x00007fe72a6740e0: 00007fe72a6741f0 00007fe7145b7b10
      0x00007fe72a6740f0: 00007fe7145aa5d0 0000000000000000
      0x00007fe72a674100: 00007fe72a674230 00007fe72a6741f0
      0x00007fe72a674110: 00007fe72a674180 00007fe7294be5f5
      0x00007fe72a674120: 00000007450c1990 00007fe72400b000
      0x00007fe72a674130: 00000007450c1990 00007fe72400b000
      0x00007fe72a674140: 0000001e46505845 00000007450c1990
      0x00007fe72a674150: 00007fe72400b000 00007fe71139b1f0
      0x00007fe72a674160: 00007fe72400b000 0000000000000000
      0x00007fe72a674170: 00007fe72a674268 00007fe72400b000
      0x00007fe72a674180: 00007fe72a6741d0 00007fe72911b0b0
      0x00007fe72a674190: 00007fe72400b000 00007fe729117229
      0x00007fe72a6741a0: 00007fe72400b000 00007fe72a6741e8
      0x00007fe72a6741b0: 00007fe72400b000 00000000000000a2

      Instructions: (pc=0x00007fe728f9bea5)
      0x00007fe728f9be85: 65 e0 4c 89 6d e8 49 89 fc 4c 89 75 f0 4c 89 7d
      0x00007fe728f9be95: f8 48 83 ec 60 4c 89 45 c8 4c 89 4d c0 83 fb 13
      0x00007fe728f9bea5: 0f b6 84 17 a0 00 00 00 8d 48 01 77 1e 84 c9 41
      0x00007fe728f9beb5: 89 ca 0f 84 9b 00 00 00 88 8c 17 a0 00 00 00 eb

      Register to memory mapping:

      RAX=0x00007fe72a67406e is pointing into the stack for thread: 0x00007fe72400b000
      RBX=0x0000000000000001 is an unknown value
      RCX=0x0000000000000000 is an unknown value
      RDX=0x0000000000000001 is an unknown value
      RSP=0x00007fe72a673fc0 is pointing into the stack for thread: 0x00007fe72400b000
      RBP=0x00007fe72a674020 is pointing into the stack for thread: 0x00007fe72400b000
      RSI=0x0000000000000000 is an unknown value
      RDI=0x0000000000000001 is an unknown value
      R8 =0x00007fe72a674068 is pointing into the stack for thread: 0x00007fe72400b000
      R9 =0x00007fe72a67406f is pointing into the stack for thread: 0x00007fe72400b000
      R10=0x00007fe729a511c0: <offset 0xfbb1c0> in /usr/lib/jvm/java-8-oracle/jre/lib/amd64/server/libjvm.so at 0x00007fe728a96000
      R11=0x00000000197916d2 is an unknown value
      R12=0x0000000000000001 is an unknown value
      R13=0x00000000000003d8 is an unknown value
      R14=0x00007fe724009a00 is an unknown value
      R15=0x00007fe7240083f0 is an unknown value


      Stack: [0x00007fe72a577000,0x00007fe72a678000], sp=0x00007fe72a673fc0, free space=1011k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x505ea5] Deoptimization::query_update_method_data(MethodData*, int, Deoptimization::DeoptReason, Method*, unsigned int&, bool&, bool&)+0x35
      V [libjvm.so+0x5078b2] Deoptimization::update_method_data_from_interpreter(MethodData*, int, int)+0x72
      V [libjvm.so+0x684a57] InterpreterRuntime::note_trap(JavaThread*, int, Thread*)+0xb7
      V [libjvm.so+0x6850b0] InterpreterRuntime::create_exception(JavaThread*, char*, char*)+0x100

      [error occurred during error reporting (printing native stack), id 0xb]

      Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)

      [error occurred during error reporting (printing Java stack), id 0xb]


      --------------- P R O C E S S ---------------

      Java Threads: ( => current thread )
        0x00007fe6cc001000 JavaThread "Attach Listener" daemon [_thread_blocked, id=22447, stack(0x00007fe6f1736000,0x00007fe6f1837000)]
        0x00007fe7241de800 JavaThread "Monitor Ctrl-Break" daemon [_thread_in_native, id=22439, stack(0x00007fe6f215b000,0x00007fe6f225c000)]
        0x00007fe7240cc800 JavaThread "Service Thread" daemon [_thread_blocked, id=22437, stack(0x00007fe6f2611000,0x00007fe6f2712000)]
        0x00007fe7240c9800 JavaThread "C1 CompilerThread3" daemon [_thread_blocked, id=22436, stack(0x00007fe6f2712000,0x00007fe6f2813000)]
        0x00007fe7240c7800 JavaThread "C2 CompilerThread2" daemon [_thread_in_native, id=22435, stack(0x00007fe6f2813000,0x00007fe6f2914000)]
        0x00007fe7240c5800 JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=22434, stack(0x00007fe6f2914000,0x00007fe6f2a15000)]
        0x00007fe7240c2800 JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=22433, stack(0x00007fe6f2a15000,0x00007fe6f2b16000)]
        0x00007fe7240c1000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=22432, stack(0x00007fe6f2b16000,0x00007fe6f2c17000)]
        0x00007fe72408d000 JavaThread "Finalizer" daemon [_thread_blocked, id=22420, stack(0x00007fe6f31f2000,0x00007fe6f32f3000)]
        0x00007fe724088800 JavaThread "Reference Handler" daemon [_thread_blocked, id=22419, stack(0x00007fe6f32f3000,0x00007fe6f33f4000)]
      =>0x00007fe72400b000 JavaThread "main" [_thread_in_vm, id=22406, stack(0x00007fe72a577000,0x00007fe72a678000)]

      Other Threads:
        0x00007fe724081000 VMThread [stack: 0x00007fe6f33f4000,0x00007fe6f34f5000] [id=22417]
        0x00007fe7240cf800 WatcherThread [stack: 0x00007fe6f2510000,0x00007fe6f2611000] [id=22438]

      VM state:not at safepoint (normal execution)

      VM Mutex/Monitor currently owned by a thread: None

      Heap:
       PSYoungGen total 111104K, used 13332K [0x0000000744600000, 0x000000074c200000, 0x00000007c0000000)
        eden space 95232K, 14% used [0x0000000744600000,0x00000007453053e8,0x000000074a300000)
        from space 15872K, 0% used [0x000000074b280000,0x000000074b280000,0x000000074c200000)
        to space 15872K, 0% used [0x000000074a300000,0x000000074a300000,0x000000074b280000)
       ParOldGen total 253952K, used 0K [0x000000064d200000, 0x000000065ca00000, 0x0000000744600000)
        object space 253952K, 0% used [0x000000064d200000,0x000000064d200000,0x000000065ca00000)
       Metaspace used 4626K, capacity 5056K, committed 5248K, reserved 1056768K
        class space used 529K, capacity 560K, committed 640K, reserved 1048576K

      Card table byte_map: [0x00007fe71364d000,0x00007fe7141e5000] byte_map_base: 0x00007fe7103e4000

      Marking Bits: (ParMarkBitMap*) 0x00007fe729a4cd60
       Begin Bits: [0x00007fe6e0690000, 0x00007fe6e6348000)
       End Bits: [0x00007fe6e6348000, 0x00007fe6ec000000)

      Polling page: 0x00007fe72a69b000

      CodeCache: size=245760Kb used=1670Kb max_used=1681Kb free=244089Kb
       bounds [0x00007fe7145a5000, 0x00007fe714815000, 0x00007fe7235a5000]
       total_blobs=536 nmethods=259 adapters=191
       compilation: enabled

      Compilation events (10 events):
      Event: 0,399 Thread 0x00007fe7240c7800 249 4 java.lang.AbstractStringBuilder::ensureCapacityInternal (16 bytes)
      Event: 0,399 Thread 0x00007fe7240c2800 250 4 java.lang.StringBuilder::append (8 bytes)
      Event: 0,399 Thread 0x00007fe7240c9800 nmethod 247 0x00007fe71473c3d0 code [0x00007fe71473c520, 0x00007fe71473c630]
      Event: 0,399 Thread 0x00007fe7240c9800 248 1 java.lang.Object::<init> (1 bytes)
      Event: 0,399 Thread 0x00007fe7240c9800 nmethod 248 0x00007fe71473bd10 code [0x00007fe71473be60, 0x00007fe71473bf70]
      Event: 0,399 Thread 0x00007fe7240c9800 256 2 java.lang.String::startsWith (72 bytes)
      Event: 0,399 Thread 0x00007fe7240c9800 nmethod 256 0x00007fe71473fed0 code [0x00007fe714740040, 0x00007fe7147402b0]
      Event: 0,399 Thread 0x00007fe7240c9800 260 2 java.lang.String::hashCode (55 bytes)
      Event: 0,399 Thread 0x00007fe7240c9800 nmethod 260 0x00007fe71473fa90 code [0x00007fe71473fc00, 0x00007fe71473fdf0]
      Event: 0,399 Thread 0x00007fe7240c9800 264 2 java.lang.StringBuilder::<init> (7 bytes)

      GC Heap History (0 events):
      No events

      Deoptimization events (2 events):
      Event: 0,093 Thread 0x00007fe72400b000 Uncommon trap: reason=unstable_if action=reinterpret pc=0x00007fe7146cd100 method=java.lang.String.indexOf(II)I @ 49
      Event: 0,142 Thread 0x00007fe72400b000 Uncommon trap: reason=unstable_if action=reinterpret pc=0x00007fe7146fe184 method=java.io.BufferedReader.read()I @ 19

      Internal exceptions (6 events):
      Event: 0,019 Thread 0x00007fe72400b000 Exception <a 'java/lang/NoSuchMethodError': Method sun.misc.Unsafe.defineClass(Ljava/lang/String;[BII)Ljava/lang/Class; name or signature does not match> (0x0000000744607cc0) thrown at [/HUDSON/workspace/8-2-build-linux-amd64/jdk8u91/6644/hotspot/src/shar
      Event: 0,019 Thread 0x00007fe72400b000 Exception <a 'java/lang/NoSuchMethodError': Method sun.misc.Unsafe.prefetchRead(Ljava/lang/Object;J)V name or signature does not match> (0x0000000744607fa8) thrown at [/HUDSON/workspace/8-2-build-linux-amd64/jdk8u91/6644/hotspot/src/share/vm/prims/jni.cpp
      Event: 0,102 Thread 0x00007fe72400b000 Exception <a 'java/security/PrivilegedActionException'> (0x000000074477b7e8) thrown at [/HUDSON/workspace/8-2-build-linux-amd64/jdk8u91/6644/hotspot/src/share/vm/prims/jvm.cpp, line 1386]
      Event: 0,102 Thread 0x00007fe72400b000 Exception <a 'java/security/PrivilegedActionException'> (0x000000074477bbe0) thrown at [/HUDSON/workspace/8-2-build-linux-amd64/jdk8u91/6644/hotspot/src/share/vm/prims/jvm.cpp, line 1386]
      Event: 0,103 Thread 0x00007fe72400b000 Exception <a 'java/security/PrivilegedActionException'> (0x000000074477e208) thrown at [/HUDSON/workspace/8-2-build-linux-amd64/jdk8u91/6644/hotspot/src/share/vm/prims/jvm.cpp, line 1386]
      Event: 0,103 Thread 0x00007fe72400b000 Exception <a 'java/security/PrivilegedActionException'> (0x000000074477e600) thrown at [/HUDSON/workspace/8-2-build-linux-amd64/jdk8u91/6644/hotspot/src/share/vm/prims/jvm.cpp, line 1386]

      Events (10 events):
      Event: 0,394 loading class org/objectweb/asm/Type
      Event: 0,394 loading class org/objectweb/asm/Type done
      Event: 0,395 loading class java/lang/Long$LongCache
      Event: 0,396 loading class java/lang/Long$LongCache done
      Event: 0,396 loading class org/objectweb/asm/Label
      Event: 0,396 loading class org/objectweb/asm/Label done
      Event: 0,397 Executing VM operation: RedefineClasses
      Event: 0,398 Executing VM operation: RedefineClasses done
      Event: 0,399 loading class net/bytebuddy/SecurityDemonstration$2
      Event: 0,399 loading class net/bytebuddy/SecurityDemonstration$2 done


      Dynamic libraries:
      00400000-00401000 r-xp 00000000 08:01 16909937 /usr/lib/jvm/java-8-oracle/bin/java
      00600000-00601000 rw-p 00000000 08:01 16909937 /usr/lib/jvm/java-8-oracle/bin/java
      01e16000-01e37000 rw-p 00000000 00:00 0 [heap]
      64d200000-65ca00000 rw-p 00000000 00:00 0
      65ca00000-744600000 ---p 00000000 00:00 0
      744600000-74c200000 rw-p 00000000 00:00 0
      74c200000-7c0000000 ---p 00000000 00:00 0
      7c0000000-7c00a0000 rw-p 00000000 00:00 0
      7c00a0000-800000000 ---p 00000000 00:00 0
      7fe6ac000000-7fe6ac033000 rw-p 00000000 00:00 0
      7fe6ac033000-7fe6b0000000 ---p 00000000 00:00 0
      7fe6b4000000-7fe6b4021000 rw-p 00000000 00:00 0
      7fe6b4021000-7fe6b8000000 ---p 00000000 00:00 0
      7fe6b8000000-7fe6b8021000 rw-p 00000000 00:00 0
      7fe6b8021000-7fe6bc000000 ---p 00000000 00:00 0
      7fe6bc000000-7fe6bc15a000 rw-p 00000000 00:00 0
      7fe6bc15a000-7fe6c0000000 ---p 00000000 00:00 0
      7fe6c0000000-7fe6c0021000 rw-p 00000000 00:00 0
      7fe6c0021000-7fe6c4000000 ---p 00000000 00:00 0
      7fe6c4000000-7fe6c4028000 rw-p 00000000 00:00 0
      7fe6c4028000-7fe6c8000000 ---p 00000000 00:00 0
      7fe6c8000000-7fe6c819d000 rw-p 00000000 00:00 0
      7fe6c819d000-7fe6cc000000 ---p 00000000 00:00 0
      7fe6cc000000-7fe6cc021000 rw-p 00000000 00:00 0
      7fe6cc021000-7fe6d0000000 ---p 00000000 00:00 0
      7fe6d0000000-7fe6d0066000 rw-p 00000000 00:00 0
      7fe6d0066000-7fe6d4000000 ---p 00000000 00:00 0
      7fe6d4000000-7fe6d4021000 rw-p 00000000 00:00 0
      7fe6d4021000-7fe6d8000000 ---p 00000000 00:00 0
      7fe6d8000000-7fe6d8021000 rw-p 00000000 00:00 0
      7fe6d8021000-7fe6dc000000 ---p 00000000 00:00 0
      7fe6dc000000-7fe6dc021000 rw-p 00000000 00:00 0
      7fe6dc021000-7fe6e0000000 ---p 00000000 00:00 0
      7fe6e0690000-7fe6ec000000 rw-p 00000000 00:00 0
      7fe6ec000000-7fe6ec021000 rw-p 00000000 00:00 0
      7fe6ec021000-7fe6f0000000 ---p 00000000 00:00 0
      7fe6f1528000-7fe6f1532000 r-xp 00000000 08:01 17176015 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libinstrument.so
      7fe6f1532000-7fe6f1731000 ---p 0000a000 08:01 17176015 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libinstrument.so
      7fe6f1731000-7fe6f1732000 rw-p 00009000 08:01 17176015 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libinstrument.so
      7fe6f1732000-7fe6f1736000 r--s 00097000 08:01 17173249 /usr/lib/jvm/java-8-oracle/jre/lib/jsse.jar
      7fe6f1736000-7fe6f1739000 ---p 00000000 00:00 0
      7fe6f1739000-7fe6f1837000 rw-p 00000000 00:00 0
      7fe6f1837000-7fe6f183a000 r-xp 00000000 08:01 17175996 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libattach.so
      7fe6f183a000-7fe6f1a39000 ---p 00003000 08:01 17175996 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libattach.so
      7fe6f1a39000-7fe6f1a3a000 rw-p 00002000 08:01 17175996 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libattach.so
      7fe6f1a3a000-7fe6f1a43000 r-xp 00000000 08:01 17176018 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libmanagement.so
      7fe6f1a43000-7fe6f1c42000 ---p 00009000 08:01 17176018 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libmanagement.so
      7fe6f1c42000-7fe6f1c43000 rw-p 00008000 08:01 17176018 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libmanagement.so
      7fe6f1c43000-7fe6f1f44000 rw-p 00000000 00:00 0
      7fe6f1f44000-7fe6f1f5a000 r-xp 00000000 08:01 17176009 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libnet.so
      7fe6f1f5a000-7fe6f215a000 ---p 00016000 08:01 17176009 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libnet.so
      7fe6f215a000-7fe6f215b000 rw-p 00016000 08:01 17176009 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libnet.so
      7fe6f215b000-7fe6f215e000 ---p 00000000 00:00 0
      7fe6f215e000-7fe6f225c000 rw-p 00000000 00:00 0
      7fe6f225c000-7fe6f225d000 r-xp 00000000 08:01 6424939 /opt/idea-IU-145.258.11/bin/libbreakgen64.so
      7fe6f225d000-7fe6f245c000 ---p 00001000 08:01 6424939 /opt/idea-IU-145.258.11/bin/libbreakgen64.so
      7fe6f245c000-7fe6f245d000 r--p 00000000 08:01 6424939 /opt/idea-IU-145.258.11/bin/libbreakgen64.so
      7fe6f245d000-7fe6f245e000 rw-p 00001000 08:01 6424939 /opt/idea-IU-145.258.11/bin/libbreakgen64.so
      7fe6f245e000-7fe6f2460000 r--s 0001e000 08:01 6425095 /opt/idea-IU-145.258.11/lib/idea_rt.jar
      7fe6f2460000-7fe6f2462000 r--s 00003000 08:01 18891649 /home/rafael/.m2/repository/com/google/code/findbugs/jsr305/3.0.1/jsr305-3.0.1.jar
      7fe6f2462000-7fe6f2464000 r--s 00008000 08:01 18752908 /home/rafael/.m2/repository/com/google/code/findbugs/annotations/3.0.1u2/annotations-3.0.1u2.jar
      7fe6f2464000-7fe6f2466000 r--s 00004000 08:01 19924481 /home/rafael/.m2/repository/org/ow2/asm/asm-analysis/6.0_ALPHA/asm-analysis-6.0_ALPHA.jar
      7fe6f2466000-7fe6f2468000 r--s 00009000 08:01 19271113 /home/rafael/.m2/repository/org/objenesis/objenesis/2.1/objenesis-2.1.jar
      7fe6f2468000-7fe6f2484000 r--s 00103000 08:01 19138997 /home/rafael/.m2/repository/org/mockito/mockito-core/1.10.19/mockito-core-1.10.19.jar
      7fe6f2484000-7fe6f24fd000 r--s 010e3000 08:01 16911582 /usr/lib/jvm/java-8-oracle/lib/tools.jar
      7fe6f24fd000-7fe6f2510000 r--s 00344000 08:01 17173235 /usr/lib/jvm/java-8-oracle/jre/lib/resources.jar
      7fe6f2510000-7fe6f2511000 ---p 00000000 00:00 0
      7fe6f2511000-7fe6f2611000 rw-p 00000000 00:00 0
      7fe6f2611000-7fe6f2614000 ---p 00000000 00:00 0
      7fe6f2614000-7fe6f2712000 rw-p 00000000 00:00 0
      7fe6f2712000-7fe6f2715000 ---p 00000000 00:00 0
      7fe6f2715000-7fe6f2813000 rw-p 00000000 00:00 0
      7fe6f2813000-7fe6f2816000 ---p 00000000 00:00 0
      7fe6f2816000-7fe6f2914000 rw-p 00000000 00:00 0
      7fe6f2914000-7fe6f2917000 ---p 00000000 00:00 0
      7fe6f2917000-7fe6f2a15000 rw-p 00000000 00:00 0
      7fe6f2a15000-7fe6f2a18000 ---p 00000000 00:00 0
      7fe6f2a18000-7fe6f2b16000 rw-p 00000000 00:00 0
      7fe6f2b16000-7fe6f2b19000 ---p 00000000 00:00 0
      7fe6f2b19000-7fe6f2c17000 rw-p 00000000 00:00 0
      7fe6f2c17000-7fe6f31f2000 r--p 00000000 08:01 16916501 /usr/lib/locale/locale-archive
      7fe6f31f2000-7fe6f31f5000 ---p 00000000 00:00 0
      7fe6f31f5000-7fe6f32f3000 rw-p 00000000 00:00 0
      7fe6f32f3000-7fe6f32f6000 ---p 00000000 00:00 0
      7fe6f32f6000-7fe6f33f4000 rw-p 00000000 00:00 0
      7fe6f33f4000-7fe6f33f5000 ---p 00000000 00:00 0
      7fe6f33f5000-7fe6f4000000 rw-p 00000000 00:00 0
      7fe6f4000000-7fe6f4021000 rw-p 00000000 00:00 0
      7fe6f4021000-7fe6f8000000 ---p 00000000 00:00 0
      7fe6f8000000-7fe6f8021000 rw-p 00000000 00:00 0
      7fe6f8021000-7fe6fc000000 ---p 00000000 00:00 0
      7fe6fc000000-7fe6fc021000 rw-p 00000000 00:00 0
      7fe6fc021000-7fe700000000 ---p 00000000 00:00 0
      7fe700000000-7fe700021000 rw-p 00000000 00:00 0
      7fe700021000-7fe704000000 ---p 00000000 00:00 0
      7fe704000000-7fe704021000 rw-p 00000000 00:00 0
      7fe704021000-7fe708000000 ---p 00000000 00:00 0
      7fe708000000-7fe708021000 rw-p 00000000 00:00 0
      7fe708021000-7fe70c000000 ---p 00000000 00:00 0
      7fe70c000000-7fe70c021000 rw-p 00000000 00:00 0
      7fe70c021000-7fe710000000 ---p 00000000 00:00 0
      7fe710000000-7fe710001000 r--s 00000000 08:01 18891648 /home/rafael/.m2/repository/net/jcip/jcip-annotations/1.0/jcip-annotations-1.0.jar
      7fe710001000-7fe710003000 r--s 00009000 08:01 19139003 /home/rafael/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar
      7fe710003000-7fe71000b000 r--s 00045000 08:01 19012620 /home/rafael/.m2/repository/junit/junit/4.12/junit-4.12.jar
      7fe71000b000-7fe71000c000 r--s 00007000 08:01 19155250 /home/rafael/.m2/repository/org/ow2/asm/asm-tree/6.0_ALPHA/asm-tree-6.0_ALPHA.jar
      7fe71000c000-7fe71000e000 r--s 0000a000 08:01 19016337 /home/rafael/.m2/repository/org/ow2/asm/asm-util/6.0_ALPHA/asm-util-6.0_ALPHA.jar
      7fe71000e000-7fe71000f000 r--s 0000b000 08:01 19016329 /home/rafael/.m2/repository/org/ow2/asm/asm-commons/6.0_ALPHA/asm-commons-6.0_ALPHA.jar
      7fe71000f000-7fe710022000 r--s 000d6000 08:01 17173136 /usr/lib/jvm/java-8-oracle/jre/lib/plugin.jar
      7fe710022000-7fe710026000 r--s 00097000 08:01 17173249 /usr/lib/jvm/java-8-oracle/jre/lib/jsse.jar
      7fe710026000-7fe71114b000 rw-p 00000000 00:00 0
      7fe71114b000-7fe711324000 r--s 03d1f000 08:01 17173197 /usr/lib/jvm/java-8-oracle/jre/lib/rt.jar
      7fe711324000-7fe711875000 rw-p 00000000 00:00 0
      7fe711875000-7fe711bf5000 ---p 00000000 00:00 0
      7fe711bf5000-7fe71278c000 rw-p 00000000 00:00 0
      7fe71278c000-7fe71278d000 ---p 00000000 00:00 0
      7fe71278d000-7fe71288d000 rw-p 00000000 00:00 0
      7fe71288d000-7fe71288e000 ---p 00000000 00:00 0
      7fe71288e000-7fe71298e000 rw-p 00000000 00:00 0
      7fe71298e000-7fe71298f000 ---p 00000000 00:00 0
      7fe71298f000-7fe712a8f000 rw-p 00000000 00:00 0
      7fe712a8f000-7fe712a90000 ---p 00000000 00:00 0
      7fe712a90000-7fe712b90000 rw-p 00000000 00:00 0
      7fe712b90000-7fe712b91000 ---p 00000000 00:00 0
      7fe712b91000-7fe712c91000 rw-p 00000000 00:00 0
      7fe712c91000-7fe712c92000 ---p 00000000 00:00 0
      7fe712c92000-7fe712d92000 rw-p 00000000 00:00 0
      7fe712d92000-7fe712d93000 ---p 00000000 00:00 0
      7fe712d93000-7fe712f0f000 rw-p 00000000 00:00 0
      7fe712f0f000-7fe71364d000 ---p 00000000 00:00 0
      7fe71364d000-7fe7136c9000 rw-p 00000000 00:00 0
      7fe7136c9000-7fe713e07000 ---p 00000000 00:00 0
      7fe713e07000-7fe713e45000 rw-p 00000000 00:00 0
      7fe713e45000-7fe7141e4000 ---p 00000000 00:00 0
      7fe7141e4000-7fe7141ef000 rw-p 00000000 00:00 0
      7fe7141ef000-7fe7145a5000 ---p 00000000 00:00 0
      7fe7145a5000-7fe714815000 rwxp 00000000 00:00 0
      7fe714815000-7fe7235a5000 ---p 00000000 00:00 0
      7fe7235a5000-7fe7235bf000 r-xp 00000000 08:01 17176004 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libzip.so
      7fe7235bf000-7fe7237bf000 ---p 0001a000 08:01 17176004 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libzip.so
      7fe7237bf000-7fe7237c0000 rw-p 0001a000 08:01 17176004 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libzip.so
      7fe7237c0000-7fe7237cb000 r-xp 00000000 08:01 17957678 /lib/x86_64-linux-gnu/libnss_files-2.23.so
      7fe7237cb000-7fe7239ca000 ---p 0000b000 08:01 17957678 /lib/x86_64-linux-gnu/libnss_files-2.23.so
      7fe7239ca000-7fe7239cb000 r--p 0000a000 08:01 17957678 /lib/x86_64-linux-gnu/libnss_files-2.23.so
      7fe7239cb000-7fe7239cc000 rw-p 0000b000 08:01 17957678 /lib/x86_64-linux-gnu/libnss_files-2.23.so
      7fe7239cc000-7fe7239d2000 rw-p 00000000 00:00 0
      7fe7239d2000-7fe7239dd000 r-xp 00000000 08:01 17957060 /lib/x86_64-linux-gnu/libnss_nis-2.23.so
      7fe7239dd000-7fe723bdc000 ---p 0000b000 08:01 17957060 /lib/x86_64-linux-gnu/libnss_nis-2.23.so
      7fe723bdc000-7fe723bdd000 r--p 0000a000 08:01 17957060 /lib/x86_64-linux-gnu/libnss_nis-2.23.so
      7fe723bdd000-7fe723bde000 rw-p 0000b000 08:01 17957060 /lib/x86_64-linux-gnu/libnss_nis-2.23.so
      7fe723bde000-7fe723bf4000 r-xp 00000000 08:01 17957057 /lib/x86_64-linux-gnu/libnsl-2.23.so
      7fe723bf4000-7fe723df3000 ---p 00016000 08:01 17957057 /lib/x86_64-linux-gnu/libnsl-2.23.so
      7fe723df3000-7fe723df4000 r--p 00015000 08:01 17957057 /lib/x86_64-linux-gnu/libnsl-2.23.so
      7fe723df4000-7fe723df5000 rw-p 00016000 08:01 17957057 /lib/x86_64-linux-gnu/libnsl-2.23.so
      7fe723df5000-7fe723df7000 rw-p 00000000 00:00 0
      7fe723df7000-7fe723dff000 r-xp 00000000 08:01 17957043 /lib/x86_64-linux-gnu/libnss_compat-2.23.so
      7fe723dff000-7fe723ffe000 ---p 00008000 08:01 17957043 /lib/x86_64-linux-gnu/libnss_compat-2.23.so
      7fe723ffe000-7fe723fff000 r--p 00007000 08:01 17957043 /lib/x86_64-linux-gnu/libnss_compat-2.23.so
      7fe723fff000-7fe724000000 rw-p 00008000 08:01 17957043 /lib/x86_64-linux-gnu/libnss_compat-2.23.so
      7fe724000000-7fe724506000 rw-p 00000000 00:00 0
      7fe724506000-7fe728000000 ---p 00000000 00:00 0
      7fe728000000-7fe728002000 r--s 0000c000 08:01 19016330 /home/rafael/.m2/repository/org/ow2/asm/asm/6.0_ALPHA/asm-6.0_ALPHA.jar
      7fe728002000-7fe728007000 r--s 00084000 08:01 17173111 /usr/lib/jvm/java-8-oracle/jre/lib/jfr.jar
      7fe728007000-7fe728049000 rw-p 00000000 00:00 0
      7fe728049000-7fe72804a000 ---p 00000000 00:00 0
      7fe72804a000-7fe72814a000 rw-p 00000000 00:00 0
      7fe72814a000-7fe728174000 r-xp 00000000 08:01 17175999 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libjava.so
      7fe728174000-7fe728374000 ---p 0002a000 08:01 17175999 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libjava.so
      7fe728374000-7fe728376000 rw-p 0002a000 08:01 17175999 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libjava.so
      7fe728376000-7fe728383000 r-xp 00000000 08:01 17176003 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libverify.so
      7fe728383000-7fe728583000 ---p 0000d000 08:01 17176003 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libverify.so
      7fe728583000-7fe728585000 rw-p 0000d000 08:01 17176003 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libverify.so
      7fe728585000-7fe72858c000 r-xp 00000000 08:01 17961247 /lib/x86_64-linux-gnu/librt-2.23.so
      7fe72858c000-7fe72878b000 ---p 00007000 08:01 17961247 /lib/x86_64-linux-gnu/librt-2.23.so
      7fe72878b000-7fe72878c000 r--p 00006000 08:01 17961247 /lib/x86_64-linux-gnu/librt-2.23.so
      7fe72878c000-7fe72878d000 rw-p 00007000 08:01 17961247 /lib/x86_64-linux-gnu/librt-2.23.so
      7fe72878d000-7fe728895000 r-xp 00000000 08:01 17961244 /lib/x86_64-linux-gnu/libm-2.23.so
      7fe728895000-7fe728a94000 ---p 00108000 08:01 17961244 /lib/x86_64-linux-gnu/libm-2.23.so
      7fe728a94000-7fe728a95000 r--p 00107000 08:01 17961244 /lib/x86_64-linux-gnu/libm-2.23.so
      7fe728a95000-7fe728a96000 rw-p 00108000 08:01 17961244 /lib/x86_64-linux-gnu/libm-2.23.so
      7fe728a96000-7fe729756000 r-xp 00000000 08:01 17175980 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/server/libjvm.so
      7fe729756000-7fe729956000 ---p 00cc0000 08:01 17175980 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/server/libjvm.so
      7fe729956000-7fe729a2e000 rw-p 00cc0000 08:01 17175980 /usr/lib/jvm/java-8-oracle/jre/lib/amd64/server/libjvm.so
      7fe729a2e000-7fe729a79000 rw-p 00000000 00:00 0
      7fe729a79000-7fe729c39000 r-xp 00000000 08:01 17961340 /lib/x86_64-linux-gnu/libc-2.23.so
      7fe729c39000-7fe729e38000 ---p 001c0000 08:01 17961340 /lib/x86_64-linux-gnu/libc-2.23.so
      7fe729e38000-7fe729e3c000 r--p 001bf000 08:01 17961340 /lib/x86_64-linux-gnu/libc-2.23.so
      7fe729e3c000-7fe729e3e000 rw-p 001c3000 08:01 17961340 /lib/x86_64-linux-gnu/libc-2.23.so
      7fe729e3e000-7fe729e42000 rw-p 00000000 00:00 0
      7fe729e42000-7fe729e45000 r-xp 00000000 08:01 17961376 /lib/x86_64-linux-gnu/libdl-2.23.so
      7fe729e45000-7fe72a044000 ---p 00003000 08:01 17961376 /lib/x86_64-linux-gnu/libdl-2.23.so
      7fe72a044000-7fe72a045000 r--p 00002000 08:01 17961376 /lib/x86_64-linux-gnu/libdl-2.23.so
      7fe72a045000-7fe72a046000 rw-p 00003000 08:01 17961376 /lib/x86_64-linux-gnu/libdl-2.23.so
      7fe72a046000-7fe72a05b000 r-xp 00000000 08:01 17172977 /usr/lib/jvm/java-8-oracle/lib/amd64/jli/libjli.so
      7fe72a05b000-7fe72a25b000 ---p 00015000 08:01 17172977 /usr/lib/jvm/java-8-oracle/lib/amd64/jli/libjli.so
      7fe72a25b000-7fe72a25c000 rw-p 00015000 08:01 17172977 /usr/lib/jvm/java-8-oracle/lib/amd64/jli/libjli.so
      7fe72a25c000-7fe72a274000 r-xp 00000000 08:01 17961339 /lib/x86_64-linux-gnu/libpthread-2.23.so
      7fe72a274000-7fe72a473000 ---p 00018000 08:01 17961339 /lib/x86_64-linux-gnu/libpthread-2.23.so
      7fe72a473000-7fe72a474000 r--p 00017000 08:01 17961339 /lib/x86_64-linux-gnu/libpthread-2.23.so
      7fe72a474000-7fe72a475000 rw-p 00018000 08:01 17961339 /lib/x86_64-linux-gnu/libpthread-2.23.so
      7fe72a475000-7fe72a479000 rw-p 00000000 00:00 0
      7fe72a479000-7fe72a49f000 r-xp 00000000 08:01 17961248 /lib/x86_64-linux-gnu/ld-2.23.so
      7fe72a49f000-7fe72a4ba000 r--s 00208000 08:01 17173112 /usr/lib/jvm/java-8-oracle/jre/lib/deploy.jar
      7fe72a4ba000-7fe72a577000 rw-p 00000000 00:00 0
      7fe72a577000-7fe72a57a000 ---p 00000000 00:00 0
      7fe72a57a000-7fe72a67c000 rw-p 00000000 00:00 0
      7fe72a67c000-7fe72a67d000 r--s 00000000 08:01 17173118 /usr/lib/jvm/java-8-oracle/jre/lib/management-agent.jar
      7fe72a67d000-7fe72a67f000 r--s 00007000 08:01 17176036 /usr/lib/jvm/java-8-oracle/jre/lib/jfxswt.jar
      7fe72a67f000-7fe72a682000 r--s 0001a000 08:01 17176034 /usr/lib/jvm/java-8-oracle/jre/lib/jce.jar
      7fe72a682000-7fe72a68c000 r--s 0006c000 08:01 17173121 /usr/lib/jvm/java-8-oracle/jre/lib/javaws.jar
      7fe72a68c000-7fe72a692000 r--s 002f8000 08:01 17173192 /usr/lib/jvm/java-8-oracle/jre/lib/charsets.jar
      7fe72a692000-7fe72a69a000 rw-s 00000000 08:01 13238327 /tmp/hsperfdata_rafael/22405
      7fe72a69a000-7fe72a69b000 rw-p 00000000 00:00 0
      7fe72a69b000-7fe72a69c000 r--p 00000000 00:00 0
      7fe72a69c000-7fe72a69e000 rw-p 00000000 00:00 0
      7fe72a69e000-7fe72a69f000 r--p 00025000 08:01 17961248 /lib/x86_64-linux-gnu/ld-2.23.so
      7fe72a69f000-7fe72a6a0000 rw-p 00026000 08:01 17961248 /lib/x86_64-linux-gnu/ld-2.23.so
      7fe72a6a0000-7fe72a6a1000 rw-p 00000000 00:00 0
      7ffde2808000-7ffde282a000 rw-p 00000000 00:00 0 [stack]
      7ffde28e7000-7ffde28e9000 r--p 00000000 00:00 0 [vvar]
      7ffde28e9000-7ffde28eb000 r-xp 00000000 00:00 0 [vdso]
      ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]

      VM Arguments:
      jvm_args: -Didea.launcher.port=7535 -Didea.launcher.bin.path=/opt/idea-IU-145.258.11/bin -Dfile.encoding=UTF-8
      java_command: com.intellij.rt.execution.application.AppMain net.bytebuddy.SecurityDemonstration
      java_class_path (initial): /usr/lib/jvm/java-8-oracle/jre/lib/charsets.jar:/usr/lib/jvm/java-8-oracle/jre/lib/deploy.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/cldrdata.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/dnsns.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/jaccess.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/jfxrt.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/localedata.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/nashorn.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/sunec.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/sunjce_provider.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/sunpkcs11.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/zipfs.jar:/usr/lib/jvm/java-8-oracle/jre/lib/javaws.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jce.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jfr.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jfxswt.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jsse.jar:/usr/lib/jvm/java-8-oracle/jre/lib/management-agent.jar:/usr/lib/jvm/java-8-oracle/jre/lib/plugin.jar:/usr/lib/jvm/java-8-oracle/jre/lib/resources.jar:/usr/lib/jvm/java-8-oracle/jre/lib/rt.jar:/usr/lib/jvm/java-8-oracle/lib/tools.jar:/home/rafael/workspace/oss/byte-buddy/byte-buddy-dep/target/test-classes:/home/rafael/workspace/oss/byte-buddy/byte-buddy-dep/target/classes:/home/rafael/.m2/repository/org/ow2/asm/asm/6.0_ALPHA/asm-6.0_ALPHA.jar:/home/rafael/.m2/repository/org/ow2/asm/asm-commons/6.0_ALPHA/asm-commons-6.0_ALPHA.jar:/home/rafael/.m2/repository/org/ow2/asm/asm-util/6.0_ALPHA/asm-util-6.0_ALPHA.jar:/home/rafael/.m2/repository/org/ow2/asm/asm-tree/6.0_ALPHA/asm-tree-6.0_ALPHA.jar:/home/rafael/.m2/repository/junit/junit/4.12/junit-4.12.jar:/home/rafael/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/home/rafael/.m2/repository/org/mockito/mockito-core/1.10.19/mockito-core-1.10.19.jar:/home/rafael/.m2/repository/org/objenesis/objenesis/2.1/objenesis-2.1.jar:/home/rafael/.m2/repository/org/ow2/asm/asm-analysis/6.0_ALPHA/asm-analysis-6.0_ALPHA.jar:/home/rafael/workspace/oss/byte-buddy/byte-buddy-
      Launcher Type: SUN_STANDARD

      Environment Variables:
      JAVA_HOME=/usr/lib/jvm/java-8-oracle
      PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin
      LD_LIBRARY_PATH=/opt/idea-IU-145.258.11/bin:
      SHELL=/bin/bash
      DISPLAY=:0

      Signal Handlers:
      SIGSEGV: [libjvm.so+0xabca10], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO
      SIGBUS: [libjvm.so+0xabca10], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO
      SIGFPE: [libjvm.so+0x919a20], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO
      SIGPIPE: [libjvm.so+0x919a20], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO
      SIGXFSZ: [libjvm.so+0x919a20], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO
      SIGILL: [libjvm.so+0x919a20], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO
      SIGUSR1: SIG_DFL, sa_mask[0]=00000000000000000000000000000000, sa_flags=none
      SIGUSR2: [libjvm.so+0x91b050], sa_mask[0]=00100000000000000000000000000000, sa_flags=SA_RESTART|SA_SIGINFO
      SIGHUP: [libjvm.so+0x91c450], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO
      SIGINT: [libjvm.so+0x91c450], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO
      SIGTERM: [libjvm.so+0x91c450], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO
      SIGQUIT: [libjvm.so+0x91c450], sa_mask[0]=11111111011111111101111111111110, sa_flags=SA_RESTART|SA_SIGINFO


      --------------- S Y S T E M ---------------

      OS:DISTRIB_ID=Ubuntu
      DISTRIB_RELEASE=16.04
      DISTRIB_CODENAME=xenial
      DISTRIB_DESCRIPTION="Ubuntu 16.04 LTS"

      uname:Linux 4.4.0-24-generic #43-Ubuntu SMP Wed Jun 8 19:27:37 UTC 2016 x86_64
      libc:glibc 2.23 NPTL 2.23
      rlimit: STACK 8192k, CORE 0k, NPROC 94769, NOFILE 65536, AS infinity
      load average:0,56 1,67 1,38

      /proc/meminfo:
      MemTotal: 24299956 kB
      MemFree: 2354908 kB
      MemAvailable: 6648920 kB
      Buffers: 734060 kB
      Cached: 16531916 kB
      SwapCached: 0 kB
      Active: 6689468 kB
      Inactive: 14535384 kB
      Active(anon): 4035560 kB
      Inactive(anon): 13112472 kB
      Active(file): 2653908 kB
      Inactive(file): 1422912 kB
      Unevictable: 32 kB
      Mlocked: 32 kB
      SwapTotal: 24769532 kB
      SwapFree: 24769532 kB
      Dirty: 5888 kB
      Writeback: 0 kB
      AnonPages: 3959152 kB
      Mapped: 823064 kB
      Shmem: 13189160 kB
      Slab: 528756 kB
      SReclaimable: 470596 kB
      SUnreclaim: 58160 kB
      KernelStack: 15728 kB
      PageTables: 51056 kB
      NFS_Unstable: 0 kB
      Bounce: 0 kB
      WritebackTmp: 0 kB
      CommitLimit: 36919508 kB
      Committed_AS: 23191864 kB
      VmallocTotal: 34359738367 kB
      VmallocUsed: 0 kB
      VmallocChunk: 0 kB
      HardwareCorrupted: 0 kB
      AnonHugePages: 2269184 kB
      CmaTotal: 0 kB
      CmaFree: 0 kB
      HugePages_Total: 0
      HugePages_Free: 0
      HugePages_Rsvd: 0
      HugePages_Surp: 0
      Hugepagesize: 2048 kB
      DirectMap4k: 150796 kB
      DirectMap2M: 6795264 kB
      DirectMap1G: 17825792 kB


      CPU:total 8 (4 cores per cpu, 2 threads per core) family 6 model 60 stepping 3, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2

      /proc/cpuinfo:
      processor : 0
      vendor_id : GenuineIntel
      cpu family : 6
      model : 60
      model name : Intel(R) Core(TM) i7-4910MQ CPU @ 2.90GHz
      stepping : 3
      microcode : 0x1e
      cpu MHz : 3679.941
      cache size : 8192 KB
      physical id : 0
      siblings : 8
      core id : 0
      cpu cores : 4
      apicid : 0
      initial apicid : 0
      fpu : yes
      fpu_exception : yes
      cpuid level : 13
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
      bugs :
      bogomips : 5786.36
      clflush size : 64
      cache_alignment : 64
      address sizes : 39 bits physical, 48 bits virtual
      power management:

      processor : 1
      vendor_id : GenuineIntel
      cpu family : 6
      model : 60
      model name : Intel(R) Core(TM) i7-4910MQ CPU @ 2.90GHz
      stepping : 3
      microcode : 0x1e
      cpu MHz : 3688.324
      cache size : 8192 KB
      physical id : 0
      siblings : 8
      core id : 0
      cpu cores : 4
      apicid : 1
      initial apicid : 1
      fpu : yes
      fpu_exception : yes
      cpuid level : 13
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
      bugs :
      bogomips : 5786.36
      clflush size : 64
      cache_alignment : 64
      address sizes : 39 bits physical, 48 bits virtual
      power management:

      processor : 2
      vendor_id : GenuineIntel
      cpu family : 6
      model : 60
      model name : Intel(R) Core(TM) i7-4910MQ CPU @ 2.90GHz
      stepping : 3
      microcode : 0x1e
      cpu MHz : 3668.160
      cache size : 8192 KB
      physical id : 0
      siblings : 8
      core id : 1
      cpu cores : 4
      apicid : 2
      initial apicid : 2
      fpu : yes
      fpu_exception : yes
      cpuid level : 13
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
      bugs :
      bogomips : 5786.36
      clflush size : 64
      cache_alignment : 64
      address sizes : 39 bits physical, 48 bits virtual
      power management:

      processor : 3
      vendor_id : GenuineIntel
      cpu family : 6
      model : 60
      model name : Intel(R) Core(TM) i7-4910MQ CPU @ 2.90GHz
      stepping : 3
      microcode : 0x1e
      cpu MHz : 3519.308
      cache size : 8192 KB
      physical id : 0
      siblings : 8
      core id : 1
      cpu cores : 4
      apicid : 3
      initial apicid : 3
      fpu : yes
      fpu_exception : yes
      cpuid level : 13
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
      bugs :
      bogomips : 5786.36
      clflush size : 64
      cache_alignment : 64
      address sizes : 39 bits physical, 48 bits virtual
      power management:

      processor : 4
      vendor_id : GenuineIntel
      cpu family : 6
      model : 60
      model name : Intel(R) Core(TM) i7-4910MQ CPU @ 2.90GHz
      stepping : 3
      microcode : 0x1e
      cpu MHz : 3653.433
      cache size : 8192 KB
      physical id : 0
      siblings : 8
      core id : 2
      cpu cores : 4
      apicid : 4
      initial apicid : 4
      fpu : yes
      fpu_exception : yes
      cpuid level : 13
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
      bugs :
      bogomips : 5786.36
      clflush size : 64
      cache_alignment : 64
      address sizes : 39 bits physical, 48 bits virtual
      power management:

      processor : 5
      vendor_id : GenuineIntel
      cpu family : 6
      model : 60
      model name : Intel(R) Core(TM) i7-4910MQ CPU @ 2.90GHz
      stepping : 3
      microcode : 0x1e
      cpu MHz : 3692.515
      cache size : 8192 KB
      physical id : 0
      siblings : 8
      core id : 2
      cpu cores : 4
      apicid : 5
      initial apicid : 5
      fpu : yes
      fpu_exception : yes
      cpuid level : 13
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
      bugs :
      bogomips : 5786.36
      clflush size : 64
      cache_alignment : 64
      address sizes : 39 bits physical, 48 bits virtual
      power management:

      processor : 6
      vendor_id : GenuineIntel
      cpu family : 6
      model : 60
      model name : Intel(R) Core(TM) i7-4910MQ CPU @ 2.90GHz
      stepping : 3
      microcode : 0x1e
      cpu MHz : 3664.195
      cache size : 8192 KB
      physical id : 0
      siblings : 8
      core id : 3
      cpu cores : 4
      apicid : 6
      initial apicid : 6
      fpu : yes
      fpu_exception : yes
      cpuid level : 13
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
      bugs :
      bogomips : 5786.36
      clflush size : 64
      cache_alignment : 64
      address sizes : 39 bits physical, 48 bits virtual
      power management:

      processor : 7
      vendor_id : GenuineIntel
      cpu family : 6
      model : 60
      model name : Intel(R) Core(TM) i7-4910MQ CPU @ 2.90GHz
      stepping : 3
      microcode : 0x1e
      cpu MHz : 3686.738
      cache size : 8192 KB
      physical id : 0
      siblings : 8
      core id : 3
      cpu cores : 4
      apicid : 7
      initial apicid : 7
      fpu : yes
      fpu_exception : yes
      cpuid level : 13
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts
      bugs :
      bogomips : 5786.36
      clflush size : 64
      cache_alignment : 64
      address sizes : 39 bits physical, 48 bits virtual
      power management:



      Memory: 4k page, physical 24299956k(2354908k free), swap 24769532k(24769532k free)

      vm_info: Java HotSpot(TM) 64-Bit Server VM (25.91-b14) for linux-amd64 JRE (1.8.0_91-b14), built on Apr 1 2016 00:57:21 by "java_re" with gcc 4.3.0 20080428 (Red Hat 4.3.0-8)

      time: Tue Jun 21 13:47:16 2016
      elapsed time: 0 seconds (0d 0h 0m 0s)

      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      package net.bytebuddy;

      import org.objectweb.asm.*;

      import java.lang.instrument.ClassFileTransformer;
      import java.lang.instrument.IllegalClassFormatException;
      import java.lang.instrument.Instrumentation;
      import java.security.AccessControlContext;
      import java.security.ProtectionDomain;

      public class SecurityDemonstration {

          public static void main(String[] args) throws Exception {
              Instrumentation instrumentation = ... // get agent from Javaagent.

              System.setSecurityManager(new SecurityManager());

              final long id = Thread.currentThread().getId();

              instrumentation.addTransformer(new ClassFileTransformer() {
                  @Override
                  public byte[] transform(ClassLoader loader,
                                          String className,
                                          final Class<?> classBeingRedefined,
                                          ProtectionDomain protectionDomain,
                                          byte[] classfileBuffer) throws IllegalClassFormatException {
                      if (classBeingRedefined != AccessControlContext.class) {
                          return null;
                      }
                      try {
                          ClassReader classReader = new ClassReader(classfileBuffer);
                          ClassWriter classWriter = new ClassWriter(classReader, ClassWriter.COMPUTE_FRAMES);

                          classReader.accept(new ClassVisitor(Opcodes.ASM5, classWriter) {
                              @Override
                              public MethodVisitor visitMethod(int access, String name, String desc, String signature, String[] exceptions) {
                                  MethodVisitor methodVisitor = super.visitMethod(access, name, desc, signature, exceptions);
                                  if (name.equals("checkPermission")) {
      // methodVisitor = new SingleIdVisitor(methodVisitor, id);
                                      methodVisitor = new MultipleIdVisitor(methodVisitor, new long[]{id}, Type.getArgumentsAndReturnSizes(desc));
                                  }
                                  return methodVisitor;
                              }
                          }, 0);

                          return classWriter.toByteArray();
                      } catch (Exception e) {
                          throw new IllegalClassFormatException();
                      }
                  }

              }, true);

              instrumentation.retransformClasses(AccessControlContext.class);

              // The following action causes a security check and should raise an assertion.
              ClassLoader classLoader = new ClassLoader() {
              };

              System.out.println("Hurray!");
          }

          private static class SingleIdVisitor extends MethodVisitor {

              private final long id;

              public SingleIdVisitor(MethodVisitor mv, long id) {
                  super(Opcodes.ASM5, mv);
                  this.id = id;
              }

              @Override
              public void visitCode() {
                  super.visitCode();
                  super.visitMethodInsn(Opcodes.INVOKESTATIC, "java/lang/Thread", "currentThread", "()Ljava/lang/Thread;", false);
                  super.visitMethodInsn(Opcodes.INVOKEVIRTUAL, "java/lang/Thread", "getId", "()J", false);
                  super.visitLdcInsn(id);
                  super.visitInsn(Opcodes.LCMP);
                  Label skipShortCut = new Label();
                  super.visitJumpInsn(Opcodes.IFNE, skipShortCut);
                  super.visitInsn(Opcodes.RETURN);
                  super.visitLabel(skipShortCut);
                  super.visitFrame(Opcodes.F_SAME, 0, null, 0, null);
              }
          }

          private static class MultipleIdVisitor extends MethodVisitor {

              private final long[] id;

              private final int offset;

              public MultipleIdVisitor(MethodVisitor mv, long[] id, int offset) {
                  super(Opcodes.ASM5, mv);
                  this.id = id;
                  this.offset = offset;
              }

              @Override
              public void visitCode() {
                  super.visitCode();
                  mv.visitMethodInsn(Opcodes.INVOKESTATIC, "java/lang/Thread", "currentThread", "()Ljava/lang/Thread;", false);
                  mv.visitMethodInsn(Opcodes.INVOKEVIRTUAL, "java/lang/Thread", "getId", "()J", false);
                  mv.visitVarInsn(Opcodes.LSTORE, offset);
                  mv.visitLdcInsn(id.length);
                  mv.visitIntInsn(Opcodes.NEWARRAY, Opcodes.T_LONG);
                  int index = 0;
                  for (long id : this.id) {
                      mv.visitInsn(Opcodes.DUP);
                      mv.visitLdcInsn(index++);
                      mv.visitLdcInsn(id);
                      mv.visitInsn(Opcodes.LASTORE);
                  }
                  mv.visitVarInsn(Opcodes.ASTORE, offset + 2);
                  mv.visitVarInsn(Opcodes.ALOAD, offset + 2);
                  mv.visitInsn(Opcodes.ARRAYLENGTH);
                  mv.visitVarInsn(Opcodes.ISTORE, offset + 3);
                  mv.visitInsn(Opcodes.ICONST_0);
                  mv.visitVarInsn(Opcodes.ISTORE, offset + 4);
                  Label startOfLoop = new Label();
                  mv.visitLabel(startOfLoop);
      // mv.visitFrame(Opcodes.F_FULL, 5, new Object[]{"net/bytebuddy/SecurityDemonstration", Opcodes.LONG, "[J", Opcodes.INTEGER, Opcodes.INTEGER}, 0, new Object[]{});
                  mv.visitVarInsn(Opcodes.ILOAD, offset + 4);
                  mv.visitVarInsn(Opcodes.ILOAD, offset + 3);
                  Label endOfLoop = new Label();
                  mv.visitJumpInsn(Opcodes.IF_ICMPGE, endOfLoop);
                  mv.visitVarInsn(Opcodes.ALOAD, offset + 2);
                  mv.visitVarInsn(Opcodes.ILOAD, offset + 4);
                  mv.visitInsn(Opcodes.LALOAD);
                  mv.visitVarInsn(Opcodes.LSTORE, offset + 5);
                  mv.visitVarInsn(Opcodes.LLOAD, offset);
                  mv.visitVarInsn(Opcodes.LLOAD, offset + 5);
                  mv.visitInsn(Opcodes.LCMP);
                  Label noWhiteList = new Label();
                  mv.visitJumpInsn(Opcodes.IFNE, noWhiteList);
                  mv.visitInsn(Opcodes.RETURN);
                  mv.visitLabel(noWhiteList);
      // mv.visitFrame(Opcodes.F_SAME, 0, null, 0, null);
                  mv.visitIincInsn(5, 1);
                  mv.visitJumpInsn(Opcodes.GOTO, startOfLoop);
                  mv.visitLabel(endOfLoop);
      // mv.visitFrame(Opcodes.F_CHOP, 3, null, 0, null);
              }
          }
      }
      ---------- END SOURCE ----------

        Attachments

          Activity

            People

            • Assignee:
              fmatte Fairoz Matte
              Reporter:
              webbuggrp Webbug Group
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: