Bug 21811 - Java probe crashes upon null argument.
Summary: Java probe crashes upon null argument.
Status: RESOLVED FIXED
Alias: None
Product: systemtap
Classification: Unclassified
Component: runtime (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: Unassigned
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-07-21 11:12 UTC by Tetsuo Handa
Modified: 2017-07-21 17:57 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tetsuo Handa 2017-07-21 11:12:56 UTC
Description of problem:

While testing RHEL 7.4 beta's systemtap-3.1-3.el7.src.rpm package, I noticed that
Java VM always crashes upon trying to probe some Java methods. I wondered why, but
it turned out that, as of 8be03508058fbbf2 ("new example: sizeof_interactive.stp"),
we are not yet ready to handle null argument.



Steps to reproduce:

(1) Create Class1.java as below and compile it and run it as usual.

---------- Class1.java ----------
public class Class1 {
	private static void method1(String obj) { }
	public static void main(String args[]) throws Exception {
		System.in.read();
		method1(null);
	}
}
---------- Class1.java ----------

    # javac Class1.java
    # java -cp . Class1

(2) Start SystemTap probe as below.

    # SYSTEMTAP_VERBOSE=1 stap -e 'probe java("Class1").class("Class1").method("method1(String)") { println(arg1); }'

(3) Press Enter key at java process so that method1 with null argument is called.



Expected result:

SystemTap probe should show something like "(null)".



Actual result:

Java VM crashes due to SIGSEGV.



Version information:

# rpm -q byteman
byteman-2.0.4-5.el7.noarch
# rpm -q java-1.7.0-openjdk
java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64
# stap -V
Systemtap translator/driver (version 3.2/0.166, commit release-3.1-137-g8be03508058f + changes)
Copyright (C) 2005-2017 Red Hat, Inc. and others
This is free software; see the source for copying conditions.
tested kernel versions: 2.6.18 ... 4.11
enabled features: JAVA PYTHON2 NLS NSS READLINE
Comment 1 Frank Ch. Eigler 2017-07-21 17:57:35 UTC
commit 5dfa6628ee1e