8231171: remove remaining sun.java.launcher.pid references

Reviewed-by: alanb, dholmes
This commit is contained in:
Matthias Baesken 2019-09-20 10:28:48 +02:00
parent bb56c020f4
commit e2ebf7b822
9 changed files with 6 additions and 110 deletions

View File

@ -136,8 +136,6 @@ static int clock_tics_per_sec = 100;
static sigset_t check_signal_done;
static bool check_signals = true;
static pid_t _initial_pid = 0;
// Signal number used to suspend/resume a thread
// do not use any signal number less than SIGSEGV, see 4355769
@ -1124,24 +1122,7 @@ intx os::current_thread_id() {
}
int os::current_process_id() {
// Under the old bsd thread library, bsd gives each thread
// its own process id. Because of this each thread will return
// a different pid if this method were to return the result
// of getpid(2). Bsd provides no api that returns the pid
// of the launcher thread for the vm. This implementation
// returns a unique pid, the pid of the launcher thread
// that starts the vm 'process'.
// Under the NPTL, getpid() returns the same pid as the
// launcher thread rather than a unique pid per thread.
// Use gettid() if you want the old pre NPTL behaviour.
// if you are looking for the result of a call to getpid() that
// returns a unique pid for the calling thread, then look at the
// OSThread::thread_id() method in osThread_bsd.hpp file
return (int)(_initial_pid ? _initial_pid : getpid());
return (int)(getpid());
}
// DLL functions
@ -3087,16 +3068,6 @@ extern void report_error(char* file_name, int line_no, char* title,
void os::init(void) {
char dummy; // used to get a guess on initial stack address
// With BsdThreads the JavaMain thread pid (primordial thread)
// is different than the pid of the java launcher thread.
// So, on Bsd, the launcher thread pid is passed to the VM
// via the sun.java.launcher.pid property.
// Use this property instead of getpid() if it was correctly passed.
// See bug 6351349.
pid_t java_launcher_pid = (pid_t) Arguments::sun_java_launcher_pid();
_initial_pid = (java_launcher_pid > 0) ? java_launcher_pid : getpid();
clock_tics_per_sec = CLK_TCK;
init_random(1234567);

View File

@ -82,7 +82,6 @@ bool Arguments::_java_compiler = false;
bool Arguments::_xdebug_mode = false;
const char* Arguments::_java_vendor_url_bug = DEFAULT_VENDOR_URL_BUG;
const char* Arguments::_sun_java_launcher = DEFAULT_JAVA_LAUNCHER;
int Arguments::_sun_java_launcher_pid = -1;
bool Arguments::_sun_java_launcher_is_altjvm = false;
// These parameters are reset in method parse_vm_init_args()
@ -361,8 +360,7 @@ bool Arguments::is_internal_module_property(const char* property) {
// Process java launcher properties.
void Arguments::process_sun_java_launcher_properties(JavaVMInitArgs* args) {
// See if sun.java.launcher, sun.java.launcher.is_altjvm or
// sun.java.launcher.pid is defined.
// See if sun.java.launcher or sun.java.launcher.is_altjvm is defined.
// Must do this before setting up other system properties,
// as some of them may depend on launcher type.
for (int index = 0; index < args->nOptions; index++) {
@ -379,10 +377,6 @@ void Arguments::process_sun_java_launcher_properties(JavaVMInitArgs* args) {
}
continue;
}
if (match_option(option, "-Dsun.java.launcher.pid=", &tail)) {
_sun_java_launcher_pid = atoi(tail);
continue;
}
}
}
@ -1411,10 +1405,9 @@ bool Arguments::add_property(const char* prop, PropertyWriteable writeable, Prop
if (strcmp(key, "java.compiler") == 0) {
process_java_compiler_argument(value);
// Record value in Arguments, but let it get passed to Java.
} else if (strcmp(key, "sun.java.launcher.is_altjvm") == 0 ||
strcmp(key, "sun.java.launcher.pid") == 0) {
// sun.java.launcher.is_altjvm and sun.java.launcher.pid property are
// private and are processed in process_sun_java_launcher_properties();
} else if (strcmp(key, "sun.java.launcher.is_altjvm") == 0) {
// sun.java.launcher.is_altjvm property is
// private and is processed in process_sun_java_launcher_properties();
// the sun.java.launcher property is passed on to the java application
} else if (strcmp(key, "sun.boot.library.path") == 0) {
// append is true, writable is true, internal is false

View File

@ -322,9 +322,6 @@ class Arguments : AllStatic {
// java launcher
static const char* _sun_java_launcher;
// sun.java.launcher.pid, private property
static int _sun_java_launcher_pid;
// was this VM created via the -XXaltjvm=<path> option
static bool _sun_java_launcher_is_altjvm;
@ -548,8 +545,6 @@ class Arguments : AllStatic {
static bool created_by_java_launcher();
// -Dsun.java.launcher.is_altjvm
static bool sun_java_launcher_is_altjvm();
// -Dsun.java.launcher.pid
static int sun_java_launcher_pid() { return _sun_java_launcher_pid; }
// -Xrun
static AgentLibrary* libraries() { return _libraryList.first(); }

View File

@ -757,10 +757,6 @@ CallJavaMainInNewThread(jlong stack_size, void* args) {
return rslt;
}
void SetJavaLauncherPlatformProps() {
/* Linux only */
}
static JavaVM* jvmInstance = NULL;
static jboolean sameThread = JNI_FALSE; /* start VM in current thread */

View File

@ -338,9 +338,6 @@ JLI_Launch(int argc, char ** argv, /* main argc, argv */
/* Set the -Dsun.java.launcher pseudo property */
SetJavaLauncherProp();
/* set the -Dsun.java.launcher.* platform properties */
SetJavaLauncherPlatformProps();
return JVMInit(&ifn, threadStackSize, argc, argv, mode, what, ret);
}
/*

View File

@ -161,7 +161,6 @@ void PrintMachineDependentOptions();
int CallJavaMainInNewThread(jlong stack_size, void* args);
/* sun.java.launcher.* platform properties. */
void SetJavaLauncherPlatformProps(void);
void SetJavaCommandLineProp(char* what, int argc, char** argv);
void SetJavaLauncherProp(void);

View File

@ -790,16 +790,6 @@ CallJavaMainInNewThread(jlong stack_size, void* args) {
/* Coarse estimation of number of digits assuming the worst case is a 64-bit pid. */
#define MAX_PID_STR_SZ 20
void SetJavaLauncherPlatformProps() {
/* Linux only */
#ifdef __linux__
const char *substr = "-Dsun.java.launcher.pid=";
char *pid_prop_str = (char *)JLI_MemAlloc(JLI_StrLen(substr) + MAX_PID_STR_SZ + 1);
sprintf(pid_prop_str, "%s%d", substr, getpid());
AddOption(pid_prop_str, NULL);
#endif /* __linux__ */
}
int
JVMInit(InvocationFunctions* ifn, jlong threadStackSize,
int argc, char **argv,

View File

@ -803,9 +803,6 @@ CallJavaMainInNewThread(jlong stack_size, void* args) {
return rslt;
}
/* Unix only, empty on windows. */
void SetJavaLauncherPlatformProps() {}
/*
* The implementation for finding classes from the bootstrap
* class loader, refer to java.h

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -132,11 +132,9 @@ public class TestSpecialArgs extends TestHelper {
* Code to create env variable not executed.
* 4) give and invalid value and check to make sure JVM commented
*/
String launcherPidString = "launcher.pid=";
String envVarPidString = "TRACER_MARKER: NativeMemoryTracking: env var is NMT_LEVEL_";
String NMT_Option_Value = "off";
String myClassName = "helloworld";
boolean haveLauncherPid = false;
// === Run the tests ===
// ---Test 1a
@ -163,46 +161,6 @@ public class TestSpecialArgs extends TestHelper {
throw new RuntimeException("Error: env Var Pid in tracking info is empty string");
}
/*
* On Linux, Launcher Tracking will print the PID. Use this info
* to validate what we got as the PID in the Launcher itself.
* Linux is the only one that prints this, and trying to get it
* here for win is awful. So let the linux test make sure we get
* the valid pid, and for non-linux, just make sure pid string is
* non-zero.
*/
if (isLinux) {
// get what the test says is the launcher pid
String launcherPid = null;
for (String line : tr.testOutput) {
int index = line.indexOf(launcherPidString);
if (index >= 0) {
int sindex = index + launcherPidString.length();
int tindex = sindex + line.substring(sindex).indexOf("'");
System.out.println("DEBUG INFO: sindex = " + sindex);
System.out.println("DEBUG INFO: searching substring: " + line.substring(sindex));
System.out.println("DEBUG INFO: tindex = " + tindex);
// DEBUG INFO
System.out.println(tr);
launcherPid = line.substring(sindex, tindex);
break;
}
}
if (launcherPid == null) {
System.out.println(tr);
throw new RuntimeException("Error: failed to find launcher Pid in launcher tracking info");
}
// did we create the env var with the correct pid?
if (!launcherPid.equals(envVarPid)) {
System.out.println(tr);
System.out.println("Error: wrong pid in creating env var");
System.out.println("Error Info: launcherPid = " + launcherPid);
System.out.println("Error Info: envVarPid = " + envVarPid);
throw new RuntimeException("Error: wrong pid in creating env var");
}
}
// --- Test 1b
if (!tr.contains("NativeMemoryTracking: got value " + NMT_Option_Value)) {
System.out.println(tr);