OpenJDK / jdk / hs
changeset 46865:39c3c10d0ca2
Merge
author | jwilhelm |
---|---|
date | Tue, 23 May 2017 15:30:45 +0200 |
parents | 387a39577f09 57a5726210bb |
children | 78da0d42b6cf |
files | jdk/src/java.base/macosx/native/libjli/java_md_macosx.c |
diffstat | 24 files changed, 53 insertions(+), 61 deletions(-) [+] |
line wrap: on
line diff
--- a/jdk/make/test/JtregNative.gmk Fri May 19 13:33:47 2017 -0700 +++ b/jdk/make/test/JtregNative.gmk Tue May 23 15:30:45 2017 +0200 @@ -1,5 +1,5 @@ # -# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2015, 2017, 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 @@ -35,12 +35,14 @@ include MakeBase.gmk include TestFilesCompilation.gmk +$(eval $(call IncludeCustomExtension, jdk, test/JtregNative.gmk)) + ################################################################################ # Targets for building the native tests themselves. ################################################################################ # Add more directories here when needed. -BUILD_JDK_JTREG_NATIVE_SRC := \ +BUILD_JDK_JTREG_NATIVE_SRC += \ $(JDK_TOPDIR)/test/native_sanity \ #
--- a/jdk/src/java.base/aix/native/libnet/aix_close.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/aix/native/libnet/aix_close.c Tue May 23 15:30:45 2017 +0200 @@ -64,7 +64,7 @@ #include <sys/uio.h> #include <unistd.h> #include <errno.h> -#include <sys/poll.h> +#include <poll.h> #include "jvm.h" #include "net_util.h"
--- a/jdk/src/java.base/aix/native/libnio/ch/AixPollPort.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/aix/native/libnio/ch/AixPollPort.c Tue May 23 15:30:45 2017 +0200 @@ -34,7 +34,7 @@ #include <unistd.h> #include <sys/types.h> #include <sys/socket.h> -#include <sys/poll.h> +#include <poll.h> #include <sys/pollset.h> #include <fcntl.h> #include <stddef.h>
--- a/jdk/src/java.base/linux/native/libnet/linux_close.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/linux/native/libnet/linux_close.c Tue May 23 15:30:45 2017 +0200 @@ -36,7 +36,7 @@ #include <sys/uio.h> #include <unistd.h> #include <errno.h> -#include <sys/poll.h> +#include <poll.h> #include "jvm.h" #include "net_util.h"
--- a/jdk/src/java.base/linux/native/libnio/fs/LinuxWatchService.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/linux/native/libnio/fs/LinuxWatchService.c Tue May 23 15:30:45 2017 +0200 @@ -32,7 +32,7 @@ #include <dlfcn.h> #include <sys/types.h> #include <sys/socket.h> -#include <sys/poll.h> +#include <poll.h> #include <sys/inotify.h> #include "sun_nio_fs_LinuxWatchService.h"
--- a/jdk/src/java.base/macosx/native/include/jvm_md.h Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/macosx/native/include/jvm_md.h Tue May 23 15:30:45 2017 +0200 @@ -60,7 +60,7 @@ #include <sys/stat.h> #include <fcntl.h> #include <errno.h> -#include <sys/signal.h> +#include <signal.h> /* O Flags */
--- a/jdk/src/java.base/macosx/native/libjli/java_md_macosx.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/macosx/native/libjli/java_md_macosx.c Tue May 23 15:30:45 2017 +0200 @@ -732,6 +732,7 @@ if (stack_size > 0) { pthread_attr_setstacksize(&attr, stack_size); } + pthread_attr_setguardsize(&attr, 0); // no pthread guard page on java threads if (pthread_create(&tid, &attr, (void *(*)(void*))continuation, (void*)args) == 0) { void * tmp;
--- a/jdk/src/java.base/macosx/native/libnet/bsd_close.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/macosx/native/libnet/bsd_close.c Tue May 23 15:30:45 2017 +0200 @@ -38,7 +38,7 @@ #include <sys/uio.h> #include <unistd.h> #include <errno.h> -#include <sys/poll.h> +#include <poll.h> #include "jvm.h" #include "net_util.h"
--- a/jdk/src/java.base/share/classes/java/lang/Module.java Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/share/classes/java/lang/Module.java Tue May 23 15:30:45 2017 +0200 @@ -127,7 +127,7 @@ // define module to VM - boolean isOpen = descriptor.isOpen(); + boolean isOpen = descriptor.isOpen() || descriptor.isAutomatic(); Version version = descriptor.version().orElse(null); String vs = Objects.toString(version, null); String loc = Objects.toString(uri, null); @@ -1050,9 +1050,6 @@ if (syncVM) { // throws IllegalStateException if defined to another module addPackage0(this, pn); - if (descriptor.isOpen() || descriptor.isAutomatic()) { - addExportsToAll0(this, pn); - } } extraPackages.putIfAbsent(pn, Boolean.TRUE); } @@ -1153,8 +1150,11 @@ m.implAddReads(ALL_UNNAMED_MODULE, true); } - // exports and opens - initExportsAndOpens(m, nameToSource, nameToModule, layer.parents()); + // export and open packages, skipped for open and automatic + // modules since they are treated as if all packages are open + if (!descriptor.isOpen() && !descriptor.isAutomatic()) { + initExportsAndOpens(m, nameToSource, nameToModule, layer.parents()); + } } // register the modules in the boot layer @@ -1215,21 +1215,11 @@ Map<String, Module> nameToSource, Map<String, Module> nameToModule, List<ModuleLayer> parents) { - // The VM doesn't special case open or automatic modules so need to - // export all packages - ModuleDescriptor descriptor = m.getDescriptor(); - if (descriptor.isOpen() || descriptor.isAutomatic()) { - assert descriptor.opens().isEmpty(); - for (String source : descriptor.packages()) { - addExportsToAll0(m, source); - } - return; - } - Map<String, Set<Module>> openPackages = new HashMap<>(); Map<String, Set<Module>> exportedPackages = new HashMap<>(); // process the open packages first + ModuleDescriptor descriptor = m.getDescriptor(); for (Opens opens : descriptor.opens()) { String source = opens.source();
--- a/jdk/src/java.base/share/native/libjli/java.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/share/native/libjli/java.c Tue May 23 15:30:45 2017 +0200 @@ -206,7 +206,7 @@ * A minimum -Xss stack size suitable for all platforms. */ #ifndef STACK_SIZE_MINIMUM -#define STACK_SIZE_MINIMUM (32 * KB) +#define STACK_SIZE_MINIMUM (64 * KB) #endif /*
--- a/jdk/src/java.base/solaris/native/libnio/ch/DevPollArrayWrapper.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/solaris/native/libnio/ch/DevPollArrayWrapper.c Tue May 23 15:30:45 2017 +0200 @@ -28,7 +28,7 @@ #include "jvm.h" #include "jlong.h" #include "sun_nio_ch_DevPollArrayWrapper.h" -#include <sys/poll.h> +#include <poll.h> #include <unistd.h> #include <sys/time.h>
--- a/jdk/src/java.base/unix/classes/module-info.java.extra Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/unix/classes/module-info.java.extra Tue May 23 15:30:45 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2016, 2017, 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 @@ -23,5 +23,3 @@ * questions. */ -// AOT uses jdk.internal.misc.Unsafe -exports jdk.internal.misc to jdk.aot;
--- a/jdk/src/java.base/unix/native/include/jvm_md.h Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/unix/native/include/jvm_md.h Tue May 23 15:30:45 2017 +0200 @@ -65,7 +65,7 @@ #include <sys/stat.h> #include <fcntl.h> #include <errno.h> -#include <sys/signal.h> +#include <signal.h> /* O Flags */
--- a/jdk/src/java.base/unix/native/libjli/java_md_solinux.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/unix/native/libjli/java_md_solinux.c Tue May 23 15:30:45 2017 +0200 @@ -742,6 +742,7 @@ if (stack_size > 0) { pthread_attr_setstacksize(&attr, stack_size); } + pthread_attr_setguardsize(&attr, 0); // no pthread guard page on java threads if (pthread_create(&tid, &attr, (void *(*)(void*))continuation, (void*)args) == 0) { void * tmp;
--- a/jdk/src/java.base/unix/native/libnet/net_util_md.h Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/unix/native/libnet/net_util_md.h Tue May 23 15:30:45 2017 +0200 @@ -27,7 +27,7 @@ #define NET_UTILS_MD_H #include <netdb.h> -#include <sys/poll.h> +#include <poll.h> #include <sys/socket.h> /************************************************************************
--- a/jdk/src/java.base/unix/native/libnio/ch/NativeThread.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/unix/native/libnio/ch/NativeThread.c Tue May 23 15:30:45 2017 +0200 @@ -31,24 +31,21 @@ #include "jlong.h" #include "sun_nio_ch_NativeThread.h" #include "nio_util.h" +#include <signal.h> #ifdef __linux__ #include <pthread.h> - #include <sys/signal.h> /* Also defined in net/linux_close.c */ #define INTERRUPT_SIGNAL (__SIGRTMAX - 2) #elif _AIX #include <pthread.h> - #include <sys/signal.h> /* Also defined in net/aix_close.c */ #define INTERRUPT_SIGNAL (SIGRTMAX - 1) #elif __solaris__ #include <thread.h> - #include <signal.h> #define INTERRUPT_SIGNAL (SIGRTMAX - 2) #elif _ALLBSD_SOURCE #include <pthread.h> - #include <signal.h> /* Also defined in net/bsd_close.c */ #define INTERRUPT_SIGNAL SIGIO #else
--- a/jdk/src/java.base/unix/native/libnio/ch/Net.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/unix/native/libnio/ch/Net.c Tue May 23 15:30:45 2017 +0200 @@ -23,7 +23,7 @@ * questions. */ -#include <sys/poll.h> +#include <poll.h> #include <sys/types.h> #include <sys/socket.h> #include <string.h>
--- a/jdk/src/java.base/windows/classes/module-info.java.extra Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/java.base/windows/classes/module-info.java.extra Tue May 23 15:30:45 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2017, 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 @@ -26,3 +26,4 @@ exports sun.security.rsa to jdk.crypto.mscapi; exports sun.security.internal.spec to jdk.crypto.mscapi; exports sun.security.util to jdk.crypto.mscapi; +
--- a/jdk/src/jdk.jdwp.agent/share/native/libjdwp/debugLoop.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/jdk.jdwp.agent/share/native/libjdwp/debugLoop.c Tue May 23 15:30:45 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, 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 @@ -125,15 +125,13 @@ jboolean replyToSender = JNI_TRUE; /* - * For VirtualMachine commands we hold the vmDeathLock + * For all commands we hold the vmDeathLock * while executing and replying to the command. This ensures - * that a VM command after VM_DEATH will be allowed to complete + * that a command after VM_DEATH will be allowed to complete * before the thread posting the VM_DEATH continues VM * termination. */ - if (cmd->cmdSet == JDWP_COMMAND_SET(VirtualMachine)){ - debugMonitorEnter(vmDeathLock); - } + debugMonitorEnter(vmDeathLock); /* Initialize the input and output streams */ inStream_init(&in, p); @@ -172,9 +170,7 @@ /* * Release the vmDeathLock as the reply has been posted. */ - if (cmd->cmdSet == JDWP_COMMAND_SET(VirtualMachine)){ - debugMonitorExit(vmDeathLock); - } + debugMonitorExit(vmDeathLock); inStream_destroy(&in); outStream_destroy(&out);
--- a/jdk/src/jdk.jdwp.agent/share/native/libjdwp/eventHelper.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/jdk.jdwp.agent/share/native/libjdwp/eventHelper.c Tue May 23 15:30:45 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2017, 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 @@ -240,10 +240,10 @@ size = commandSize(command); /* - * Immediately close out any commands enqueued from a - * previously attached debugger. + * Immediately close out any commands enqueued from + * a dead VM or a previously attached debugger. */ - if (command->sessionID != currentSessionID) { + if (gdata->vmDead || command->sessionID != currentSessionID) { log_debugee_location("dequeueCommand(): command session removal", NULL, NULL, 0); completeCommand(command); command = NULL;
--- a/jdk/src/jdk.jdwp.agent/unix/native/libdt_socket/socket_md.c Fri May 19 13:33:47 2017 -0700 +++ b/jdk/src/jdk.jdwp.agent/unix/native/libdt_socket/socket_md.c Tue May 23 15:30:45 2017 +0200 @@ -37,7 +37,7 @@ #include <thread.h> #else #include <pthread.h> -#include <sys/poll.h> +#include <poll.h> #endif #include "socket_md.h"
--- a/jdk/test/sun/tools/jcmd/TestJcmdDefaults.java Fri May 19 13:33:47 2017 -0700 +++ b/jdk/test/sun/tools/jcmd/TestJcmdDefaults.java Tue May 23 15:30:45 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 2017, 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 @@ -49,7 +49,7 @@ private static final String TEST_SRC = System.getProperty("test.src").trim(); private static final String[] VM_ARGS = new String[] { "-XX:+UsePerfData" }; - private static final String JCMD_LIST_REGEX = "^\\d+\\s*.*"; + private static final String JCMD_LIST_REGEX = "(?s)^\\d+\\s*.*"; public static void main(String[] args) throws Exception { testJcmdUsage("-h");
--- a/jdk/test/tools/launcher/Settings.java Fri May 19 13:33:47 2017 -0700 +++ b/jdk/test/tools/launcher/Settings.java Tue May 23 15:30:45 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2010, 2017, 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 @@ -73,9 +73,9 @@ } static void runTestOptionDefault() throws IOException { - String stackSize = "256"; // in kb + int stackSize = 256; // in kb if (getArch().equals("ppc64") || getArch().equals("ppc64le")) { - stackSize = "800"; + stackSize = 800; } TestResult tr; tr = doExec(javaCmd, "-Xms64m", "-Xmx512m", @@ -86,7 +86,7 @@ throw new RuntimeException("test fails"); } tr = doExec(javaCmd, "-Xms65536k", "-Xmx712m", - "-Xss" + stackSize + "000", "-XshowSettings", "-jar", testJar.getAbsolutePath()); + "-Xss" + (stackSize * 1024), "-XshowSettings", "-jar", testJar.getAbsolutePath()); containsAllOptions(tr); if (!tr.isOK()) { System.out.println(tr);
--- a/jdk/test/tools/launcher/TooSmallStackSize.java Fri May 19 13:33:47 2017 -0700 +++ b/jdk/test/tools/launcher/TooSmallStackSize.java Tue May 23 15:30:45 2017 +0200 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2017, 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 @@ -155,15 +155,21 @@ checkStack("16k"); /* - * Try with a 32k stack size, which is the size that the launcher will + * Try with a 64k stack size, which is the size that the launcher will * set to if you try setting to anything smaller. This should produce the same * result as setting to 16k if the fix for 6762191 is in place. */ - String min_stack_allowed = checkStack("32k"); + String min_stack_allowed = checkStack("64k"); /* * Try again with a the minimum stack size that was given in the error message */ checkMinStackAllowed(min_stack_allowed); + + /* + * Try again with a size that is not OS page aligned. This is to help test that + * asserts added for 8176768 are not triggered. + */ + checkMinStackAllowed("513k"); } }