diff options
author | Greg Lewis <glewis@FreeBSD.org> | 2009-05-22 06:23:16 +0000 |
---|---|---|
committer | Greg Lewis <glewis@FreeBSD.org> | 2009-05-22 06:23:16 +0000 |
commit | ebcf4a72d89c83294d0ce090cc40bedee88bffbc (patch) | |
tree | 33425d7f1c087f457921022ba678679dc31755fd /java | |
parent | - WITH_SCTP does not buuild on 7.1 (diff) |
. Add support for the serviceability agent (includes work by glewis@ and
Brian Gardner). Core support needs some more work.
. Install the debug build when WITH_DEBUG is set.
. Change WITH_DEBUG to only build the debug build.
. Eliminate the requirements for the binary plugins.
. Fix some compilation errors in the debug build on 7.x.
Submitted by: Kurt Miller <kurt@intricatesoftware.com>
Notes
Notes:
svn path=/head/; revision=234382
Diffstat (limited to 'java')
-rw-r--r-- | java/openjdk6/Makefile | 22 | ||||
-rw-r--r-- | java/openjdk6/files/patch-set | 4282 |
2 files changed, 3218 insertions, 1086 deletions
diff --git a/java/openjdk6/Makefile b/java/openjdk6/Makefile index 98e9de202763..77788e5bac7c 100644 --- a/java/openjdk6/Makefile +++ b/java/openjdk6/Makefile @@ -7,6 +7,7 @@ PORTNAME= openjdk6 PORTVERSION= b16 +PORTREVISION= 1 CATEGORIES= java devel MASTER_SITES= http://download.java.net/openjdk/jdk6/promoted/${PORTVERSION}/ DISTNAME= openjdk-6-src-${PORTVERSION}-${OPENJDK_BUILDDATE} @@ -34,7 +35,6 @@ LIB_DEPENDS+= freetype.9:${PORTSDIR}/print/freetype2 BUILD_DEPENDS+= ant:${PORTSDIR}/devel/apache-ant BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip BUILD_DEPENDS+= unzip:${PORTSDIR}/archivers/unzip -BUILD_DEPENDS+= ${JAVAJARDIR}/jdk-7-icedtea-plugs/jre/lib/rt-closed.jar:${PORTSDIR}/java/icedtea6-stubs .include <bsd.port.pre.mk> @@ -45,8 +45,6 @@ CATEGORIES+= ipv6 # avoid ARCH in MAKEFLAGS, breaks build NOPRECIOUSMAKEVARS= yes -OPENJDK_OSARCH= bsd-${ARCH:S/i386/i586/} - ONLY_FOR_ARCHS= amd64 i386 BOOTSTRAP_JDKS= ${LOCALBASE}/openjdk6 \ @@ -72,7 +70,6 @@ MAKE_ENV= LANG=C LC_ALL=C \ ALT_FREETYPE_LIB_PATH=${LOCALBASE}/lib \ ALT_X11_PATH=${LOCALBASE} \ ALT_PACKAGE_PATH=${LOCALBASE} \ - ALT_BINARY_PLUGS_PATH=${JAVAJARDIR}/jdk-7-icedtea-plugs \ ANT_HOME=${LOCALBASE} \ NO_DOCS=true @@ -81,7 +78,10 @@ MAKE_ENV+= DONT_ENABLE_IPV6="YES" .endif .if defined(WITH_DEBUG) -MAKE_ENV+= SKIP_DEBUG_BUILD="false" +ALL_TARGET= debug_build +OPENJDK_OSARCH= bsd-${ARCH:S/i386/i586/}-debug +.else +OPENJDK_OSARCH= bsd-${ARCH:S/i386/i586/} .endif # perhaps we could check to see how many processors are availble and set this equivelent to that @@ -115,11 +115,20 @@ COPYDIRS= \ hotspot/src/os_cpu/linux_x86/vm \ hotspot/build/linux \ hotspot/build/linux/makefiles \ + hotspot/agent/src/os/linux \ + hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/linux \ + hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/linux/amd64 \ + hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/linux/x86 \ + hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/linux \ + hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/linux_amd64 \ + hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/linux_x86 \ jdk/src/linux/doc/man COPYFILES= \ corba/make/common/Defs-linux.gmk \ corba/make/common/shared/Defs-linux.gmk \ + hotspot/agent/src/share/classes/sun/jvm/hotspot/LinuxVtblAccess.java \ + jdk/make/com/sun/tools/attach/mapfile-linux \ jdk/make/common/Defs-linux.gmk \ jdk/make/common/shared/Defs-linux.gmk \ jdk/make/java/nio/mapfile-linux \ @@ -129,6 +138,7 @@ COPYFILES= \ jdk/src/solaris/classes/java/lang/UNIXProcess.java.linux \ jdk/src/solaris/classes/sun/awt/fontconfigs/linux.fontconfig.properties \ jdk/src/solaris/classes/sun/tools/attach/LinuxAttachProvider.java \ + jdk/src/solaris/classes/sun/tools/attach/LinuxVirtualMachine.java \ jdk/src/solaris/hpi/include/largefile_linux.h \ jdk/src/solaris/native/java/net/linux_close.c \ jdk/src/solaris/native/sun/tools/attach/LinuxVirtualMachine.c @@ -139,7 +149,7 @@ post-extract: cd ${WRKDIR}/$$d; \ for f in *; do \ if [ -f $$f ]; then \ - t=`echo ${WRKDIR}/$$d/$$f | ${SED} 's/linux/bsd/g;'`; \ + t=`echo ${WRKDIR}/$$d/$$f | ${SED} 's/linux/bsd/g; s/Linux/Bsd/g'`; \ ${SED} 's/linux/bsd/g; s/Linux/Bsd/g' < $$f > $$t; \ fi; \ done; \ diff --git a/java/openjdk6/files/patch-set b/java/openjdk6/files/patch-set index 55f834e8a4dd..976c23c9fadb 100644 --- a/java/openjdk6/files/patch-set +++ b/java/openjdk6/files/patch-set @@ -21,9 +21,9 @@ * have any questions. * */ -diff -upr ../orig/corba/make/common/Defs-bsd.gmk ./corba/make/common/Defs-bsd.gmk ---- ../orig/corba/make/common/Defs-bsd.gmk 2009-05-04 18:32:16.000000000 -0400 -+++ ./corba/make/common/Defs-bsd.gmk 2009-05-05 14:33:21.000000000 -0400 +diff -uNpr ../orig/corba/make/common/Defs-bsd.gmk ./corba/make/common/Defs-bsd.gmk +--- ../orig/corba/make/common/Defs-bsd.gmk 2009-05-14 23:40:16.000000000 -0400 ++++ ./corba/make/common/Defs-bsd.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -40,18 +40,12 @@ # Get shared JDK settings include $(BUILDDIR)/common/shared/Defs.gmk @@ -145,9 +145,9 @@ diff -upr ../orig/corba/make/common/Defs-bsd.gmk ./corba/make/common/Defs-bsd.gm override OTHER_M4FLAGS = -D__GLIBC__ -DGNU_ASSEMBLER override SUN_CMM_SUBDIR = override THREADS_FLAG = native -diff -upr ../orig/corba/make/common/Defs-linux.gmk ./corba/make/common/Defs-linux.gmk ---- ../orig/corba/make/common/Defs-linux.gmk 2009-01-27 15:40:31.000000000 -0500 -+++ ./corba/make/common/Defs-linux.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/corba/make/common/Defs-linux.gmk ./corba/make/common/Defs-linux.gmk +--- ../orig/corba/make/common/Defs-linux.gmk 2009-04-24 03:30:19.000000000 -0400 ++++ ./corba/make/common/Defs-linux.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -282,7 +282,7 @@ override LIBSOCKET = override LIBTHREAD = override MOOT_PRIORITIES = true @@ -157,9 +157,9 @@ diff -upr ../orig/corba/make/common/Defs-linux.gmk ./corba/make/common/Defs-linu ifeq ($(ARCH), amd64) override OPENWIN_LIB = $(OPENWIN_HOME)/lib64 else -diff -upr ../orig/corba/make/common/Defs.gmk ./corba/make/common/Defs.gmk ---- ../orig/corba/make/common/Defs.gmk 2009-01-27 15:40:31.000000000 -0500 -+++ ./corba/make/common/Defs.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/corba/make/common/Defs.gmk ./corba/make/common/Defs.gmk +--- ../orig/corba/make/common/Defs.gmk 2009-04-24 03:30:19.000000000 -0400 ++++ ./corba/make/common/Defs.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -53,6 +53,24 @@ endif _OUTPUTDIR=$(TOPDIR)/build/$(PLATFORM)-$(ARCH) @@ -195,9 +195,9 @@ diff -upr ../orig/corba/make/common/Defs.gmk ./corba/make/common/Defs.gmk endif # PROGRAM LDLIBS_COMMON += $(EXTRA_LIBS) -diff -upr ../orig/corba/make/common/Mapfile-vers.gmk ./corba/make/common/Mapfile-vers.gmk ---- ../orig/corba/make/common/Mapfile-vers.gmk 2009-01-27 15:40:31.000000000 -0500 -+++ ./corba/make/common/Mapfile-vers.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/corba/make/common/Mapfile-vers.gmk ./corba/make/common/Mapfile-vers.gmk +--- ../orig/corba/make/common/Mapfile-vers.gmk 2009-04-24 03:30:19.000000000 -0400 ++++ ./corba/make/common/Mapfile-vers.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -77,7 +77,7 @@ endif endif # PLATFORM @@ -207,9 +207,9 @@ diff -upr ../orig/corba/make/common/Mapfile-vers.gmk ./corba/make/common/Mapfile ifeq ($(VARIANT), OPT) # OPT build MUST have a mapfile? -diff -upr ../orig/corba/make/common/shared/Compiler-gcc.gmk ./corba/make/common/shared/Compiler-gcc.gmk ---- ../orig/corba/make/common/shared/Compiler-gcc.gmk 2009-01-27 15:40:31.000000000 -0500 -+++ ./corba/make/common/shared/Compiler-gcc.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/corba/make/common/shared/Compiler-gcc.gmk ./corba/make/common/shared/Compiler-gcc.gmk +--- ../orig/corba/make/common/shared/Compiler-gcc.gmk 2009-04-24 03:30:19.000000000 -0400 ++++ ./corba/make/common/shared/Compiler-gcc.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -99,6 +99,24 @@ ifeq ($(PLATFORM), linux) endif @@ -235,9 +235,9 @@ diff -upr ../orig/corba/make/common/shared/Compiler-gcc.gmk ./corba/make/common/ ifeq ($(PLATFORM), solaris) # Settings specific to Solaris -diff -upr ../orig/corba/make/common/shared/Compiler.gmk ./corba/make/common/shared/Compiler.gmk ---- ../orig/corba/make/common/shared/Compiler.gmk 2009-01-27 15:40:31.000000000 -0500 -+++ ./corba/make/common/shared/Compiler.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/corba/make/common/shared/Compiler.gmk ./corba/make/common/shared/Compiler.gmk +--- ../orig/corba/make/common/shared/Compiler.gmk 2009-04-24 03:30:19.000000000 -0400 ++++ ./corba/make/common/shared/Compiler.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -42,6 +42,11 @@ ifeq ($(PLATFORM), linux) override CC_VERSION = gcc endif @@ -250,9 +250,9 @@ diff -upr ../orig/corba/make/common/shared/Compiler.gmk ./corba/make/common/shar # Get the compiler specific settings include $(BUILDDIR)/common/shared/Compiler-$(CC_VERSION).gmk -diff -upr ../orig/corba/make/common/shared/Defs-bsd.gmk ./corba/make/common/shared/Defs-bsd.gmk ---- ../orig/corba/make/common/shared/Defs-bsd.gmk 2009-05-04 18:32:16.000000000 -0400 -+++ ./corba/make/common/shared/Defs-bsd.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/corba/make/common/shared/Defs-bsd.gmk ./corba/make/common/shared/Defs-bsd.gmk +--- ../orig/corba/make/common/shared/Defs-bsd.gmk 2009-05-14 23:40:16.000000000 -0400 ++++ ./corba/make/common/shared/Defs-bsd.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -54,7 +54,7 @@ $(shell if [ "$1" != "" -a -d "$1" ]; th endef @@ -271,9 +271,9 @@ diff -upr ../orig/corba/make/common/shared/Defs-bsd.gmk ./corba/make/common/shar endif # _BOOTDIR1: First choice for a Bootstrap JDK, previous released JDK. -diff -upr ../orig/corba/make/common/shared/Defs-utils.gmk ./corba/make/common/shared/Defs-utils.gmk ---- ../orig/corba/make/common/shared/Defs-utils.gmk 2009-01-27 15:40:31.000000000 -0500 -+++ ./corba/make/common/shared/Defs-utils.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/corba/make/common/shared/Defs-utils.gmk ./corba/make/common/shared/Defs-utils.gmk +--- ../orig/corba/make/common/shared/Defs-utils.gmk 2009-04-24 03:30:19.000000000 -0400 ++++ ./corba/make/common/shared/Defs-utils.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -53,6 +53,13 @@ ifeq ($(PLATFORM),linux) UTILS_DEVTOOL_PATH=$(USRBIN_PATH) endif @@ -321,9 +321,9 @@ diff -upr ../orig/corba/make/common/shared/Defs-utils.gmk ./corba/make/common/sh + TAR = $(UTILS_USR_BIN_PATH)tar + endif +endif -diff -upr ../orig/corba/make/common/shared/Platform.gmk ./corba/make/common/shared/Platform.gmk ---- ../orig/corba/make/common/shared/Platform.gmk 2009-01-27 15:40:31.000000000 -0500 -+++ ./corba/make/common/shared/Platform.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/corba/make/common/shared/Platform.gmk ./corba/make/common/shared/Platform.gmk +--- ../orig/corba/make/common/shared/Platform.gmk 2009-04-24 03:30:19.000000000 -0400 ++++ ./corba/make/common/shared/Platform.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -262,6 +262,76 @@ ifeq ($(SYSTEM_UNAME), Linux) MB_OF_MEMORY := $(shell free -m | fgrep Mem: | sed -e 's@\ \ *@ @g' | cut -d' ' -f2) endif @@ -426,9 +426,9 @@ diff -upr ../orig/corba/make/common/shared/Platform.gmk ./corba/make/common/shar fi) MIN_VM_MEMORY := $(shell \ if [ $(MAX_VM_MEMORY) -le 128 ] ; then \ -diff -upr ../orig/corba/make/sun/corba/core/Makefile ./corba/make/sun/corba/core/Makefile ---- ../orig/corba/make/sun/corba/core/Makefile 2009-01-27 15:40:31.000000000 -0500 -+++ ./corba/make/sun/corba/core/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/corba/make/sun/corba/core/Makefile ./corba/make/sun/corba/core/Makefile +--- ../orig/corba/make/sun/corba/core/Makefile 2009-04-24 03:30:19.000000000 -0400 ++++ ./corba/make/sun/corba/core/Makefile 2009-05-14 23:41:33.000000000 -0400 @@ -53,11 +53,19 @@ include $(CORBA_JMK_DIRECTORY)sun_corba. ifdef STANDALONE_CORBA_WS # FIXUP: What is this all about? @@ -449,9 +449,2016 @@ diff -upr ../orig/corba/make/sun/corba/core/Makefile ./corba/make/sun/corba/core FILES_c = ioser.c -diff -upr ../orig/hotspot/build/bsd/Makefile ./hotspot/build/bsd/Makefile ---- ../orig/hotspot/build/bsd/Makefile 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/build/bsd/Makefile 2009-05-04 19:16:59.000000000 -0400 +diff -uNpr ../orig/hotspot/agent/make/Makefile ./hotspot/agent/make/Makefile +--- ../orig/hotspot/agent/make/Makefile 2009-04-24 03:30:48.000000000 -0400 ++++ ./hotspot/agent/make/Makefile 2009-05-14 23:41:34.000000000 -0400 +@@ -52,6 +52,9 @@ sun.jvm.hotspot.code \ + sun.jvm.hotspot.compiler \ + sun.jvm.hotspot.debugger \ + sun.jvm.hotspot.debugger.amd64 \ ++sun.jvm.hotspot.debugger.bsd \ ++sun.jvm.hotspot.debugger.bsd.amd64 \ ++sun.jvm.hotspot.debugger.bsd.x86 \ + sun.jvm.hotspot.debugger.cdbg \ + sun.jvm.hotspot.debugger.cdbg.basic \ + sun.jvm.hotspot.debugger.cdbg.basic.amd64 \ +@@ -94,6 +97,9 @@ sun.jvm.hotspot.memory \ + sun.jvm.hotspot.oops \ + sun.jvm.hotspot.runtime \ + sun.jvm.hotspot.runtime.amd64 \ ++sun.jvm.hotspot.runtime.bsd \ ++sun.jvm.hotspot.runtime.bsd_amd64 \ ++sun.jvm.hotspot.runtime.bsd_x86 \ + sun.jvm.hotspot.runtime.ia64 \ + sun.jvm.hotspot.runtime.linux \ + sun.jvm.hotspot.runtime.linux_amd64 \ +@@ -143,6 +149,9 @@ sun/jvm/hotspot/code/*.java \ + sun/jvm/hotspot/compiler/*.java \ + sun/jvm/hotspot/debugger/*.java \ + sun/jvm/hotspot/debugger/amd64/*.java \ ++sun/jvm/hotspot/debugger/bsd/*.java \ ++sun/jvm/hotspot/debugger/bsd/amd64/*.java \ ++sun/jvm/hotspot/debugger/bsd/x86/*.java \ + sun/jvm/hotspot/debugger/cdbg/*.java \ + sun/jvm/hotspot/debugger/cdbg/basic/*.java \ + sun/jvm/hotspot/debugger/cdbg/basic/amd64/*.java \ +@@ -178,6 +187,9 @@ sun/jvm/hotspot/memory/*.java \ + sun/jvm/hotspot/oops/*.java \ + sun/jvm/hotspot/runtime/*.java \ + sun/jvm/hotspot/runtime/amd64/*.java \ ++sun/jvm/hotspot/runtime/bsd/*.java \ ++sun/jvm/hotspot/runtime/bsd_amd64/*.java \ ++sun/jvm/hotspot/runtime/bsd_x86/*.java \ + sun/jvm/hotspot/runtime/ia64/*.java \ + sun/jvm/hotspot/runtime/linux/*.java \ + sun/jvm/hotspot/runtime/linux_amd64/*.java \ +diff -uNpr ../orig/hotspot/agent/src/os/bsd/BsdDebuggerLocal.c ./hotspot/agent/src/os/bsd/BsdDebuggerLocal.c +--- ../orig/hotspot/agent/src/os/bsd/BsdDebuggerLocal.c 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/BsdDebuggerLocal.c 2009-05-14 23:41:34.000000000 -0400 +@@ -25,6 +25,7 @@ + * + */ + ++#include <stdlib.h> + #include <jni.h> + #include "libproc.h" + +@@ -76,7 +77,7 @@ JNIEXPORT void JNICALL Java_sun_jvm_hots + (JNIEnv *env, jclass cls) { + jclass listClass; + +- if (init_libproc(getenv("LIBSAPROC_DEBUG")) != true) { ++ if (init_libproc(getenv("LIBSAPROC_DEBUG") != NULL) != true) { + THROW_NEW_DEBUGGER_EXCEPTION("can't initialize libproc"); + } + +@@ -278,7 +279,7 @@ JNIEXPORT jbyteArray JNICALL Java_sun_jv + bufPtr = (*env)->GetByteArrayElements(env, array, &isCopy); + CHECK_EXCEPTION_(0); + +- err = ps_pdread(get_proc_handle(env, this_obj), (psaddr_t) (uintptr_t)addr, bufPtr, numBytes); ++ err = ps_pread(get_proc_handle(env, this_obj), (psaddr_t) (uintptr_t)addr, bufPtr, numBytes); + (*env)->ReleaseByteArrayElements(env, array, bufPtr, 0); + return (err == PS_OK)? array : 0; + } +@@ -286,11 +287,10 @@ JNIEXPORT jbyteArray JNICALL Java_sun_jv + JNIEXPORT jlongArray JNICALL Java_sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal_getThreadIntegerRegisterSet0 + (JNIEnv *env, jobject this_obj, jint lwp_id) { + +- struct user_regs_struct gregs; ++ struct reg gregs; + jboolean isCopy; + jlongArray array; + jlong *regs; +- int i; + + struct ps_prochandle* ph = get_proc_handle(env, this_obj); + if (get_lwp_regs(ph, lwp_id, &gregs) != true) { +@@ -320,26 +320,27 @@ JNIEXPORT jlongArray JNICALL Java_sun_jv + #ifdef i386 + #define REG_INDEX(reg) sun_jvm_hotspot_debugger_x86_X86ThreadContext_##reg + +- regs[REG_INDEX(GS)] = (uintptr_t) gregs.xgs; +- regs[REG_INDEX(FS)] = (uintptr_t) gregs.xfs; +- regs[REG_INDEX(ES)] = (uintptr_t) gregs.xes; +- regs[REG_INDEX(DS)] = (uintptr_t) gregs.xds; +- regs[REG_INDEX(EDI)] = (uintptr_t) gregs.edi; +- regs[REG_INDEX(ESI)] = (uintptr_t) gregs.esi; +- regs[REG_INDEX(FP)] = (uintptr_t) gregs.ebp; +- regs[REG_INDEX(SP)] = (uintptr_t) gregs.esp; +- regs[REG_INDEX(EBX)] = (uintptr_t) gregs.ebx; +- regs[REG_INDEX(EDX)] = (uintptr_t) gregs.edx; +- regs[REG_INDEX(ECX)] = (uintptr_t) gregs.ecx; +- regs[REG_INDEX(EAX)] = (uintptr_t) gregs.eax; +- regs[REG_INDEX(PC)] = (uintptr_t) gregs.eip; +- regs[REG_INDEX(CS)] = (uintptr_t) gregs.xcs; +- regs[REG_INDEX(SS)] = (uintptr_t) gregs.xss; ++ regs[REG_INDEX(GS)] = (uintptr_t) gregs.r_gs; ++ regs[REG_INDEX(FS)] = (uintptr_t) gregs.r_fs; ++ regs[REG_INDEX(ES)] = (uintptr_t) gregs.r_es; ++ regs[REG_INDEX(DS)] = (uintptr_t) gregs.r_ds; ++ regs[REG_INDEX(EDI)] = (uintptr_t) gregs.r_edi; ++ regs[REG_INDEX(ESI)] = (uintptr_t) gregs.r_esi; ++ regs[REG_INDEX(FP)] = (uintptr_t) gregs.r_ebp; ++ regs[REG_INDEX(SP)] = (uintptr_t) gregs.r_isp; ++ regs[REG_INDEX(EBX)] = (uintptr_t) gregs.r_ebx; ++ regs[REG_INDEX(EDX)] = (uintptr_t) gregs.r_edx; ++ regs[REG_INDEX(ECX)] = (uintptr_t) gregs.r_ecx; ++ regs[REG_INDEX(EAX)] = (uintptr_t) gregs.r_eax; ++ regs[REG_INDEX(PC)] = (uintptr_t) gregs.r_eip; ++ regs[REG_INDEX(CS)] = (uintptr_t) gregs.r_cs; ++ regs[REG_INDEX(SS)] = (uintptr_t) gregs.r_ss; + + #endif /* i386 */ + + #if ia64 + regs = (*env)->GetLongArrayElements(env, array, &isCopy); ++ int i; + for (i = 0; i < NPRGREG; i++ ) { + regs[i] = 0xDEADDEAD; + } +@@ -348,31 +349,31 @@ JNIEXPORT jlongArray JNICALL Java_sun_jv + #ifdef amd64 + #define REG_INDEX(reg) sun_jvm_hotspot_debugger_amd64_AMD64ThreadContext_##reg + +- regs[REG_INDEX(R15)] = gregs.r15; +- regs[REG_INDEX(R14)] = gregs.r14; +- regs[REG_INDEX(R13)] = gregs.r13; +- regs[REG_INDEX(R12)] = gregs.r12; +- regs[REG_INDEX(RBP)] = gregs.rbp; +- regs[REG_INDEX(RBX)] = gregs.rbx; +- regs[REG_INDEX(R11)] = gregs.r11; +- regs[REG_INDEX(R10)] = gregs.r10; +- regs[REG_INDEX(R9)] = gregs.r9; +- regs[REG_INDEX(R8)] = gregs.r8; +- regs[REG_INDEX(RAX)] = gregs.rax; +- regs[REG_INDEX(RCX)] = gregs.rcx; +- regs[REG_INDEX(RDX)] = gregs.rdx; +- regs[REG_INDEX(RSI)] = gregs.rsi; +- regs[REG_INDEX(RDI)] = gregs.rdi; +- regs[REG_INDEX(RIP)] = gregs.rip; +- regs[REG_INDEX(CS)] = gregs.cs; +- regs[REG_INDEX(RSP)] = gregs.rsp; +- regs[REG_INDEX(SS)] = gregs.ss; +- regs[REG_INDEX(FSBASE)] = gregs.fs_base; +- regs[REG_INDEX(GSBASE)] = gregs.gs_base; +- regs[REG_INDEX(DS)] = gregs.ds; +- regs[REG_INDEX(ES)] = gregs.es; +- regs[REG_INDEX(FS)] = gregs.fs; +- regs[REG_INDEX(GS)] = gregs.gs; ++ regs[REG_INDEX(R15)] = gregs.r_r15; ++ regs[REG_INDEX(R14)] = gregs.r_r14; ++ regs[REG_INDEX(R13)] = gregs.r_r13; ++ regs[REG_INDEX(R12)] = gregs.r_r12; ++ regs[REG_INDEX(RBP)] = gregs.r_rbp; ++ regs[REG_INDEX(RBX)] = gregs.r_rbx; ++ regs[REG_INDEX(R11)] = gregs.r_r11; ++ regs[REG_INDEX(R10)] = gregs.r_r10; ++ regs[REG_INDEX(R9)] = gregs.r_r9; ++ regs[REG_INDEX(R8)] = gregs.r_r8; ++ regs[REG_INDEX(RAX)] = gregs.r_rax; ++ regs[REG_INDEX(RCX)] = gregs.r_rcx; ++ regs[REG_INDEX(RDX)] = gregs.r_rdx; ++ regs[REG_INDEX(RSI)] = gregs.r_rsi; ++ regs[REG_INDEX(RDI)] = gregs.r_rdi; ++ regs[REG_INDEX(RIP)] = gregs.r_rip; ++ regs[REG_INDEX(CS)] = gregs.r_cs; ++ regs[REG_INDEX(RSP)] = gregs.r_rsp; ++ regs[REG_INDEX(SS)] = gregs.r_ss; ++// regs[REG_INDEX(FSBASE)] = gregs.fs_base; ++// regs[REG_INDEX(GSBASE)] = gregs.gs_base; ++// regs[REG_INDEX(DS)] = gregs.ds; ++// regs[REG_INDEX(ES)] = gregs.es; ++// regs[REG_INDEX(FS)] = gregs.fs; ++// regs[REG_INDEX(GS)] = gregs.gs; + + #endif /* amd64 */ + +diff -uNpr ../orig/hotspot/agent/src/os/bsd/Makefile ./hotspot/agent/src/os/bsd/Makefile +--- ../orig/hotspot/agent/src/os/bsd/Makefile 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/Makefile 2009-05-14 23:41:34.000000000 -0400 +@@ -22,7 +22,7 @@ + # + # + +-ARCH := $(shell if ([ `uname -m` = "ia64" ]) ; then echo ia64 ; elif ([ `uname -m` = "x86_64" ]) ; then echo amd64; elif ([ `uname -m` = "sparc64" ]) ; then echo sparc; else echo i386 ; fi ) ++ARCH := $(shell if ([ `uname -m` = "ia64" ]) ; then echo ia64 ; elif ([ `uname -m` = "amd64" ]) ; then echo amd64; elif ([ `uname -m` = "sparc64" ]) ; then echo sparc; else echo i386 ; fi ) + GCC = gcc + + JAVAH = ${JAVA_HOME}/bin/javah +@@ -32,15 +32,16 @@ SOURCES = salibelf.c \ + libproc_impl.c \ + ps_proc.c \ + ps_core.c \ +- BsdDebuggerLocal.c ++ hsearch_r.c \ ++ BsdDebuggerLocal.c + +-INCLUDES = -I${JAVA_HOME}/include -I${JAVA_HOME}/include/bsd ++INCLUDES = -I${JAVA_HOME}/include -I${JAVA_HOME}/include/$(shell uname -s | tr "[:upper:]" "[:lower:]") + + OBJS = $(SOURCES:.c=.o) + +-LIBS = -lthread_db ++LIBS = -lutil -lthread_db + +-CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) ++CFLAGS = -c -fPIC -g -Wall -D_ALLBSD_SOURCE -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) + + LIBSA = $(ARCH)/libsaproc.so + +@@ -49,8 +50,7 @@ all: $(LIBSA) + BsdDebuggerLocal.o: BsdDebuggerLocal.c + $(JAVAH) -jni -classpath ../../../build/classes \ + sun.jvm.hotspot.debugger.x86.X86ThreadContext \ +- sun.jvm.hotspot.debugger.sparc.SPARCThreadContext \ +- sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext ++ sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext + $(GCC) $(CFLAGS) $< + + .c.obj: +@@ -64,14 +64,15 @@ $(LIBSA): $(OBJS) mapfile + if [ ! -d $(ARCH) ] ; then mkdir $(ARCH) ; fi + $(GCC) -shared $(LFLAGS_LIBSA) -o $(LIBSA) $(OBJS) $(LIBS) + +-test.o: test.c ++test.o: $(LIBSA) test.c + $(GCC) -c -o test.o -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) test.c + + test: test.o + $(GCC) -o test test.o -L$(ARCH) -lsaproc $(LIBS) + + clean: +- rm -rf $(LIBSA) +- rm -rf $(OBJS) +- rmdir $(ARCH) ++ rm -f $(LIBSA) ++ rm -f $(OBJS) ++ rm -f test.o ++ -rmdir $(ARCH) + +diff -uNpr ../orig/hotspot/agent/src/os/bsd/elfmacros.h ./hotspot/agent/src/os/bsd/elfmacros.h +--- ../orig/hotspot/agent/src/os/bsd/elfmacros.h 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/elfmacros.h 2009-05-14 23:41:34.000000000 -0400 +@@ -28,16 +28,19 @@ + #ifndef _ELFMACROS_H_ + #define _ELFMACROS_H_ + ++#define ELF_NHDR Elf_Note ++ + #if defined(_LP64) + #define ELF_EHDR Elf64_Ehdr + #define ELF_SHDR Elf64_Shdr + #define ELF_PHDR Elf64_Phdr + #define ELF_SYM Elf64_Sym +-#define ELF_NHDR Elf64_Nhdr + #define ELF_DYN Elf64_Dyn + #define ELF_ADDR Elf64_Addr + ++#ifndef ELF_ST_TYPE + #define ELF_ST_TYPE ELF64_ST_TYPE ++#endif + + #else + +@@ -45,11 +48,12 @@ + #define ELF_SHDR Elf32_Shdr + #define ELF_PHDR Elf32_Phdr + #define ELF_SYM Elf32_Sym +-#define ELF_NHDR Elf32_Nhdr + #define ELF_DYN Elf32_Dyn + #define ELF_ADDR Elf32_Addr + ++#ifndef ELF_ST_TYPE + #define ELF_ST_TYPE ELF32_ST_TYPE ++#endif + + #endif + +diff -uNpr ../orig/hotspot/agent/src/os/bsd/hsearch_r.c ./hotspot/agent/src/os/bsd/hsearch_r.c +--- ../orig/hotspot/agent/src/os/bsd/hsearch_r.c 1969-12-31 19:00:00.000000000 -0500 ++++ ./hotspot/agent/src/os/bsd/hsearch_r.c 2009-05-14 23:41:34.000000000 -0400 +@@ -0,0 +1,217 @@ ++/* Copyright (C) 1993,1995-1997,2002,2005,2007,2008 ++ Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1993. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, write to the Free ++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA ++ 02111-1307 USA. */ ++ ++#include <errno.h> ++#include <stdlib.h> ++#include <string.h> ++ ++#include <search.h> ++ ++#include "hsearch_r.h" ++ ++#define __set_errno(ERRNO) errno = ERRNO ++ ++/* [Aho,Sethi,Ullman] Compilers: Principles, Techniques and Tools, 1986 ++ [Knuth] The Art of Computer Programming, part 3 (6.4) */ ++ ++ ++/* The reentrant version has no static variables to maintain the state. ++ Instead the interface of all functions is extended to take an argument ++ which describes the current status. */ ++typedef struct _ENTRY ++{ ++ unsigned int used; ++ ENTRY entry; ++} ++_ENTRY; ++ ++ ++/* For the used double hash method the table size has to be a prime. To ++ correct the user given table size we need a prime test. This trivial ++ algorithm is adequate because ++ a) the code is (most probably) called a few times per program run and ++ b) the number is small because the table must fit in the core */ ++static int ++isprime (unsigned int number) ++{ ++ /* no even number will be passed */ ++ unsigned int div = 3; ++ ++ while (div * div < number && number % div != 0) ++ div += 2; ++ ++ return number % div != 0; ++} ++ ++ ++/* Before using the hash table we must allocate memory for it. ++ Test for an existing table are done. We allocate one element ++ more as the found prime number says. This is done for more effective ++ indexing as explained in the comment for the hsearch function. ++ The contents of the table is zeroed, especially the field used ++ becomes zero. */ ++int ++hcreate_r (size_t nel, struct hsearch_data *htab) ++{ ++ /* Test for correct arguments. */ ++ if (htab == NULL) ++ { ++ __set_errno (EINVAL); ++ return 0; ++ } ++ ++ /* There is still another table active. Return with error. */ ++ if (htab->table != NULL) ++ return 0; ++ ++ /* Change nel to the first prime number not smaller as nel. */ ++ nel |= 1; /* make odd */ ++ while (!isprime (nel)) ++ nel += 2; ++ ++ htab->size = nel; ++ htab->filled = 0; ++ ++ /* allocate memory and zero out */ ++ htab->table = (_ENTRY *) calloc (htab->size + 1, sizeof (_ENTRY)); ++ if (htab->table == NULL) ++ return 0; ++ ++ /* everything went alright */ ++ return 1; ++} ++ ++ ++/* After using the hash table it has to be destroyed. The used memory can ++ be freed and the local static variable can be marked as not used. */ ++void ++hdestroy_r (struct hsearch_data *htab) ++{ ++ /* Test for correct arguments. */ ++ if (htab == NULL) ++ { ++ __set_errno (EINVAL); ++ return; ++ } ++ ++ /* Free used memory. */ ++ free (htab->table); ++ ++ /* the sign for an existing table is an value != NULL in htable */ ++ htab->table = NULL; ++} ++ ++ ++/* This is the search function. It uses double hashing with open addressing. ++ The argument item.key has to be a pointer to an zero terminated, most ++ probably strings of chars. The function for generating a number of the ++ strings is simple but fast. It can be replaced by a more complex function ++ like ajw (see [Aho,Sethi,Ullman]) if the needs are shown. ++ ++ We use an trick to speed up the lookup. The table is created by hcreate ++ with one more element available. This enables us to use the index zero ++ special. This index will never be used because we store the first hash ++ index in the field used where zero means not used. Every other value ++ means used. The used field can be used as a first fast comparison for ++ equality of the stored and the parameter value. This helps to prevent ++ unnecessary expensive calls of strcmp. */ ++int ++hsearch_r (ENTRY item, ACTION action, ENTRY **retval, struct hsearch_data *htab) ++{ ++ unsigned int hval; ++ unsigned int count; ++ unsigned int len = strlen (item.key); ++ unsigned int idx; ++ ++ /* Compute an value for the given string. Perhaps use a better method. */ ++ hval = len; ++ count = len; ++ while (count-- > 0) ++ { ++ hval <<= 4; ++ hval += item.key[count]; ++ } ++ ++ /* First hash function: simply take the modul but prevent zero. */ ++ idx = hval % htab->size + 1; ++ ++ if (htab->table[idx].used) ++ { ++ /* Further action might be required according to the action value. */ ++ if (htab->table[idx].used == hval ++ && strcmp (item.key, htab->table[idx].entry.key) == 0) ++ { ++ *retval = &htab->table[idx].entry; ++ return 1; ++ } ++ ++ /* Second hash function, as suggested in [Knuth] */ ++ unsigned int hval2 = 1 + hval % (htab->size - 2); ++ unsigned int first_idx = idx; ++ ++ do ++ { ++ /* Because SIZE is prime this guarantees to step through all ++ available indeces. */ ++ if (idx <= hval2) ++ idx = htab->size + idx - hval2; ++ else ++ idx -= hval2; ++ ++ /* If we visited all entries leave the loop unsuccessfully. */ ++ if (idx == first_idx) ++ break; ++ ++ /* If entry is found use it. */ ++ if (htab->table[idx].used == hval ++ && strcmp (item.key, htab->table[idx].entry.key) == 0) ++ { ++ *retval = &htab->table[idx].entry; ++ return 1; ++ } ++ } ++ while (htab->table[idx].used); ++ } ++ ++ /* An empty bucket has been found. */ ++ if (action == ENTER) ++ { ++ /* If table is full and another entry should be entered return ++ with error. */ ++ if (htab->filled == htab->size) ++ { ++ __set_errno (ENOMEM); ++ *retval = NULL; ++ return 0; ++ } ++ ++ htab->table[idx].used = hval; ++ htab->table[idx].entry = item; ++ ++ ++htab->filled; ++ ++ *retval = &htab->table[idx].entry; ++ return 1; ++ } ++ ++ __set_errno (ESRCH); ++ *retval = NULL; ++ return 0; ++} +diff -uNpr ../orig/hotspot/agent/src/os/bsd/hsearch_r.h ./hotspot/agent/src/os/bsd/hsearch_r.h +--- ../orig/hotspot/agent/src/os/bsd/hsearch_r.h 1969-12-31 19:00:00.000000000 -0500 ++++ ./hotspot/agent/src/os/bsd/hsearch_r.h 2009-05-14 23:41:34.000000000 -0400 +@@ -0,0 +1,42 @@ ++/* Declarations for System V style searching functions. ++ Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, write to the Free ++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA ++ 02111-1307 USA. */ ++ ++#ifndef _HSEARCH_R_H_ ++#define _HSEARCH_R_H_ ++ ++#include <search.h> ++ ++struct _ENTRY; ++ ++/* Data type for reentrant functions. */ ++struct hsearch_data ++ { ++ struct _ENTRY *table; ++ unsigned int size; ++ unsigned int filled; ++ }; ++ ++/* Reentrant versions which can handle multiple hashing tables at the ++ same time. */ ++extern int hsearch_r (ENTRY __item, ACTION __action, ENTRY **__retval, ++ struct hsearch_data *__htab); ++extern int hcreate_r (size_t __nel, struct hsearch_data *__htab); ++extern void hdestroy_r (struct hsearch_data *__htab); ++ ++#endif /* _HSEARCH_R_H_ */ +diff -uNpr ../orig/hotspot/agent/src/os/bsd/libproc.h ./hotspot/agent/src/os/bsd/libproc.h +--- ../orig/hotspot/agent/src/os/bsd/libproc.h 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/libproc.h 2009-05-14 23:41:34.000000000 -0400 +@@ -30,7 +30,8 @@ + + #include <unistd.h> + #include <stdint.h> +-#include "proc_service.h" ++#include <machine/reg.h> ++#include <proc_service.h> + + #if defined(sparc) || defined(sparcv9) + /* +@@ -53,14 +54,11 @@ Please note that the bulk of the functio + adds Pgrab__ and some missing stuff. We hide the difference b/w live process and core + file by this interface. + +-1. pthread_id unique in both NPTL & BsdThreads. We store this in +-OSThread::_pthread_id in JVM code. ++1. pthread_id is unique. We store this in OSThread::_pthread_id in JVM code. + +-2. All threads see the same pid when they call getpid() under NPTL. +-Threads receive different pid under BsdThreads. We used to save the result of +-::getpid() call in OSThread::_thread_id. This way uniqueness of OSThread::_thread_id +-was lost under NPTL. Now, we store the result of ::gettid() call in +-OSThread::_thread_id. Because gettid returns actual pid of thread (lwp id), this is ++2. All threads see the same pid when they call getpid(). ++We used to save the result of ::getpid() call in OSThread::_thread_id. ++Because gettid returns actual pid of thread (lwp id), this is + unique again. We therefore use OSThread::_thread_id as unique identifier. + + 3. There is a unique LWP id under both thread libraries. libthread_db maps pthread_id +@@ -77,19 +75,6 @@ combination of ptrace and /proc calls. + + *************************************************************************************/ + +-#ifdef ia64 +-struct user_regs_struct { +-/* copied from user.h which doesn't define this in a struct */ +- +-#define IA64_REG_COUNT (EF_SIZE/8+32) /* integer and fp regs */ +-unsigned long regs[IA64_REG_COUNT]; /* integer and fp regs */ +-}; +-#endif +- +-#if defined(sparc) || defined(sparcv9) +-#define user_regs_struct pt_regs +-#endif +- + // This C bool type must be int for compatibility with Bsd calls and + // it would be a mistake to equivalence it to C++ bool on many platforms + +@@ -121,7 +106,7 @@ int get_num_threads(struct ps_prochandle + lwpid_t get_lwp_id(struct ps_prochandle* ph, int index); + + // get regs for a given lwp +-bool get_lwp_regs(struct ps_prochandle* ph, lwpid_t lid, struct user_regs_struct* regs); ++bool get_lwp_regs(struct ps_prochandle* ph, lwpid_t lid, struct reg* regs); + + // get number of shared objects + int get_num_libs(struct ps_prochandle* ph); +diff -uNpr ../orig/hotspot/agent/src/os/bsd/libproc_impl.c ./hotspot/agent/src/os/bsd/libproc_impl.c +--- ../orig/hotspot/agent/src/os/bsd/libproc_impl.c 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/libproc_impl.c 2009-05-14 23:41:34.000000000 -0400 +@@ -181,6 +181,9 @@ lib_info* add_lib_info_fd(struct ps_proc + if (newlib->symtab == NULL) { + print_debug("symbol table build failed for %s\n", newlib->name); + } ++ else { ++ print_debug("built symbol table for %s\n", newlib->name); ++ } + + // even if symbol table building fails, we add the lib_info. + // This is because we may need to read from the ELF file for core file +@@ -275,7 +278,7 @@ static int thread_db_callback(const td_t + + print_debug("thread_db : pthread %d (lwp %d)\n", ti.ti_tid, ti.ti_lid); + +- if (ptr->callback(ptr->ph, ti.ti_tid, ti.ti_lid) != true) ++ if (ptr->callback(ptr->ph, (pthread_t)ti.ti_tid, ti.ti_lid) != true) + return TD_ERR; + + return TD_OK; +@@ -327,7 +330,7 @@ lwpid_t get_lwp_id(struct ps_prochandle* + } + + // get regs for a given lwp +-bool get_lwp_regs(struct ps_prochandle* ph, lwpid_t lwp_id, struct user_regs_struct* regs) { ++bool get_lwp_regs(struct ps_prochandle* ph, lwpid_t lwp_id, struct reg* regs) { + return ph->ops->get_lwp_regs(ph, lwp_id, regs); + } + +@@ -378,11 +381,6 @@ bool find_lib(struct ps_prochandle* ph, + //-------------------------------------------------------------------------- + // proc service functions + +-// get process id +-pid_t ps_getpid(struct ps_prochandle *ph) { +- return ph->pid; +-} +- + // ps_pglobal_lookup() looks up the symbol sym_name in the symbol table + // of the load object object_name in the target process identified by ph. + // It returns the symbol's value as an address in the target process in +@@ -395,17 +393,33 @@ ps_err_e ps_pglobal_lookup(struct ps_pro + } + + // read "size" bytes info "buf" from address "addr" +-ps_err_e ps_pdread(struct ps_prochandle *ph, psaddr_t addr, ++ps_err_e ps_pread(struct ps_prochandle *ph, psaddr_t addr, + void *buf, size_t size) { + return ph->ops->p_pread(ph, (uintptr_t) addr, buf, size)? PS_OK: PS_ERR; + } + + // write "size" bytes of data to debuggee at address "addr" +-ps_err_e ps_pdwrite(struct ps_prochandle *ph, psaddr_t addr, ++ps_err_e ps_pwrite(struct ps_prochandle *ph, psaddr_t addr, + const void *buf, size_t size) { + return ph->ops->p_pwrite(ph, (uintptr_t)addr, buf, size)? PS_OK: PS_ERR; + } + ++// fill in ptrace_lwpinfo for lid ++ps_err_e ps_linfo(struct ps_prochandle *ph, lwpid_t lwp_id, void *linfo) { ++ return ph->ops->get_lwp_info(ph, lwp_id, linfo)? PS_OK: PS_ERR; ++} ++ ++// needed for when libthread_db is compiled with TD_DEBUG defined ++void ++ps_plog (const char *format, ...) ++{ ++ va_list alist; ++ ++ va_start(alist, format); ++ vfprintf(stderr, format, alist); ++ va_end(alist); ++} ++ + // ------------------------------------------------------------------------ + // Functions below this point are not yet implemented. They are here only + // to make the linker happy. +@@ -430,9 +444,12 @@ ps_err_e ps_lgetregs(struct ps_prochandl + return PS_OK; + } + +-// new libthread_db of NPTL seem to require this symbol +-ps_err_e ps_get_thread_area() { +- print_debug("ps_get_thread_area not implemented\n"); ++ps_err_e ps_lstop(struct ps_prochandle *ph, lwpid_t lid) { ++ print_debug("ps_lstop not implemented\n"); + return PS_OK; + } + ++ps_err_e ps_pcontinue(struct ps_prochandle *ph) { ++ print_debug("ps_pcontinue not implemented\n"); ++ return PS_OK; ++} +diff -uNpr ../orig/hotspot/agent/src/os/bsd/libproc_impl.h ./hotspot/agent/src/os/bsd/libproc_impl.h +--- ../orig/hotspot/agent/src/os/bsd/libproc_impl.h 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/libproc_impl.h 2009-05-14 23:41:34.000000000 -0400 +@@ -50,7 +50,7 @@ typedef struct lib_info { + typedef struct thread_info { + lwpid_t lwp_id; + pthread_t pthread_id; // not used cores, always -1 +- struct user_regs_struct regs; // not for process, core uses for caching regset ++ struct reg regs; // not for process, core uses for caching regset + struct thread_info* next; + } thread_info; + +@@ -74,7 +74,9 @@ typedef struct ps_prochandle_ops { + bool (*p_pwrite)(struct ps_prochandle *ph, + uintptr_t addr, const char *buf , size_t size); + // get integer regset of a thread +- bool (*get_lwp_regs)(struct ps_prochandle* ph, lwpid_t lwp_id, struct user_regs_struct* regs); ++ bool (*get_lwp_regs)(struct ps_prochandle* ph, lwpid_t lwp_id, struct reg* regs); ++ // get info on thread ++ bool (*get_lwp_info)(struct ps_prochandle *ph, lwpid_t lwp_id, void *linfo); + } ps_prochandle_ops; + + // the ps_prochandle +diff -uNpr ../orig/hotspot/agent/src/os/bsd/mapfile ./hotspot/agent/src/os/bsd/mapfile +--- ../orig/hotspot/agent/src/os/bsd/mapfile 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/mapfile 2009-05-14 23:41:34.000000000 -0400 +@@ -43,15 +43,21 @@ SUNWprivate_1.1 { + Java_sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal_getThreadIntegerRegisterSet0; + + # proc_service.h functions - to be used by libthread_db +- ps_getpid; + ps_pglobal_lookup; +- ps_pdread; +- ps_pdwrite; ++ ps_pread; ++ ps_pwrite; ++ ps_linfo; ++ ps_plog; ++ ++ # dummy implementations of proc_service.h functions ++ # presumably unused but needed to avoid undefined symbols ++ # export LIBSAPROC_DEBUG=1 to see if actually used + ps_lsetfpregs; + ps_lsetregs; + ps_lgetfpregs; + ps_lgetregs; +- ps_get_thread_area; ++ ps_lstop; ++ ps_lcontinue; + + # used by attach test program + init_libproc; +diff -uNpr ../orig/hotspot/agent/src/os/bsd/proc_service.h ./hotspot/agent/src/os/bsd/proc_service.h +--- ../orig/hotspot/agent/src/os/bsd/proc_service.h 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/proc_service.h 2009-05-14 23:41:34.000000000 -0400 +@@ -25,6 +25,8 @@ + * + */ + ++#error Should be using system proc_service.h ++ + #ifndef _PROC_SERVICE_H_ + #define _PROC_SERVICE_H_ + +@@ -58,11 +60,11 @@ ps_err_e ps_pglobal_lookup(struct ps_pro + const char *sym_name, psaddr_t *sym_addr); + + // read "size" bytes of data from debuggee at address "addr" +-ps_err_e ps_pdread(struct ps_prochandle *ph, psaddr_t addr, ++ps_err_e ps_pread(struct ps_prochandle *ph, psaddr_t addr, + void *buf, size_t size); + + // write "size" bytes of data to debuggee at address "addr" +-ps_err_e ps_pdwrite(struct ps_prochandle *ph, psaddr_t addr, ++ps_err_e ps_pwrite(struct ps_prochandle *ph, psaddr_t addr, + const void *buf, size_t size); + + ps_err_e ps_lsetfpregs(struct ps_prochandle *ph, lwpid_t lid, const prfpregset_t *fpregs); +diff -uNpr ../orig/hotspot/agent/src/os/bsd/ps_core.c ./hotspot/agent/src/os/bsd/ps_core.c +--- ../orig/hotspot/agent/src/os/bsd/ps_core.c 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/ps_core.c 2009-05-14 23:41:34.000000000 -0400 +@@ -145,6 +145,7 @@ static map_info* add_class_share_map_inf + + map->next = ph->core->class_share_maps; + ph->core->class_share_maps = map; ++ return map; + } + + // Return the map_info for the given virtual address. We keep a sorted +@@ -243,7 +244,7 @@ struct FileMapHeader { + + static bool read_int(struct ps_prochandle* ph, uintptr_t addr, int* pvalue) { + int i; +- if (ps_pdread(ph, (psaddr_t) addr, &i, sizeof(i)) == PS_OK) { ++ if (ps_pread(ph, (psaddr_t) addr, &i, sizeof(i)) == PS_OK) { + *pvalue = i; + return true; + } else { +@@ -253,7 +254,7 @@ static bool read_int(struct ps_prochandl + + static bool read_pointer(struct ps_prochandle* ph, uintptr_t addr, uintptr_t* pvalue) { + uintptr_t uip; +- if (ps_pdread(ph, (psaddr_t) addr, &uip, sizeof(uip)) == PS_OK) { ++ if (ps_pread(ph, (psaddr_t) addr, &uip, sizeof(uip)) == PS_OK) { + *pvalue = uip; + return true; + } else { +@@ -267,7 +268,7 @@ static bool read_string(struct ps_procha + char c = ' '; + + while (c != '\0') { +- if (ps_pdread(ph, (psaddr_t) addr, &c, sizeof(char)) != PS_OK) ++ if (ps_pread(ph, (psaddr_t) addr, &c, sizeof(char)) != PS_OK) + return false; + if (i < size - 1) + buf[i] = c; +@@ -507,24 +508,30 @@ static bool core_write_data(struct ps_pr + } + + static bool core_get_lwp_regs(struct ps_prochandle* ph, lwpid_t lwp_id, +- struct user_regs_struct* regs) { ++ struct reg* regs) { + // for core we have cached the lwp regs from NOTE section + thread_info* thr = ph->threads; + while (thr) { + if (thr->lwp_id == lwp_id) { +- memcpy(regs, &thr->regs, sizeof(struct user_regs_struct)); ++ memcpy(regs, &thr->regs, sizeof(struct reg)); + return true; + } + thr = thr->next; + } + return false; + } ++ ++static bool core_get_lwp_info(struct ps_prochandle *ph, lwpid_t lwp_id, void *linfo) { ++ print_debug("core_get_lwp_info not implemented\n"); ++ return false; ++} + + static ps_prochandle_ops core_ops = { +- release: core_release, +- p_pread: core_read_data, +- p_pwrite: core_write_data, +- get_lwp_regs: core_get_lwp_regs ++ .release= core_release, ++ .p_pread= core_read_data, ++ .p_pwrite= core_write_data, ++ .get_lwp_regs= core_get_lwp_regs, ++ .get_lwp_info= core_get_lwp_info + }; + + // read regs and create thread from NT_PRSTATUS entries from core file +@@ -539,52 +546,52 @@ static bool core_handle_prstatus(struct + return false; + + // copy regs +- memcpy(&newthr->regs, prstat->pr_reg, sizeof(struct user_regs_struct)); ++ memcpy(&newthr->regs, &prstat->pr_reg, sizeof(struct reg)); + + if (is_debug()) { + print_debug("integer regset\n"); + #ifdef i386 + // print the regset +- print_debug("\teax = 0x%x\n", newthr->regs.eax); +- print_debug("\tebx = 0x%x\n", newthr->regs.ebx); +- print_debug("\tecx = 0x%x\n", newthr->regs.ecx); +- print_debug("\tedx = 0x%x\n", newthr->regs.edx); +- print_debug("\tesp = 0x%x\n", newthr->regs.esp); +- print_debug("\tebp = 0x%x\n", newthr->regs.ebp); +- print_debug("\tesi = 0x%x\n", newthr->regs.esi); +- print_debug("\tedi = 0x%x\n", newthr->regs.edi); +- print_debug("\teip = 0x%x\n", newthr->regs.eip); ++ print_debug("\teax = 0x%x\n", newthr->regs.r_eax); ++ print_debug("\tebx = 0x%x\n", newthr->regs.r_ebx); ++ print_debug("\tecx = 0x%x\n", newthr->regs.r_ecx); ++ print_debug("\tedx = 0x%x\n", newthr->regs.r_edx); ++ print_debug("\tesp = 0x%x\n", newthr->regs.r_esp); ++ print_debug("\tebp = 0x%x\n", newthr->regs.r_ebp); ++ print_debug("\tesi = 0x%x\n", newthr->regs.r_esi); ++ print_debug("\tedi = 0x%x\n", newthr->regs.r_edi); ++ print_debug("\teip = 0x%x\n", newthr->regs.r_eip); + #endif + + #if defined(amd64) || defined(x86_64) + // print the regset +- print_debug("\tr15 = 0x%lx\n", newthr->regs.r15); +- print_debug("\tr14 = 0x%lx\n", newthr->regs.r14); +- print_debug("\tr13 = 0x%lx\n", newthr->regs.r13); +- print_debug("\tr12 = 0x%lx\n", newthr->regs.r12); +- print_debug("\trbp = 0x%lx\n", newthr->regs.rbp); +- print_debug("\trbx = 0x%lx\n", newthr->regs.rbx); +- print_debug("\tr11 = 0x%lx\n", newthr->regs.r11); +- print_debug("\tr10 = 0x%lx\n", newthr->regs.r10); +- print_debug("\tr9 = 0x%lx\n", newthr->regs.r9); +- print_debug("\tr8 = 0x%lx\n", newthr->regs.r8); +- print_debug("\trax = 0x%lx\n", newthr->regs.rax); +- print_debug("\trcx = 0x%lx\n", newthr->regs.rcx); +- print_debug("\trdx = 0x%lx\n", newthr->regs.rdx); +- print_debug("\trsi = 0x%lx\n", newthr->regs.rsi); +- print_debug("\trdi = 0x%lx\n", newthr->regs.rdi); +- print_debug("\torig_rax = 0x%lx\n", newthr->regs.orig_rax); +- print_debug("\trip = 0x%lx\n", newthr->regs.rip); +- print_debug("\tcs = 0x%lx\n", newthr->regs.cs); +- print_debug("\teflags = 0x%lx\n", newthr->regs.eflags); +- print_debug("\trsp = 0x%lx\n", newthr->regs.rsp); +- print_debug("\tss = 0x%lx\n", newthr->regs.ss); +- print_debug("\tfs_base = 0x%lx\n", newthr->regs.fs_base); +- print_debug("\tgs_base = 0x%lx\n", newthr->regs.gs_base); +- print_debug("\tds = 0x%lx\n", newthr->regs.ds); +- print_debug("\tes = 0x%lx\n", newthr->regs.es); +- print_debug("\tfs = 0x%lx\n", newthr->regs.fs); +- print_debug("\tgs = 0x%lx\n", newthr->regs.gs); ++ print_debug("\tr15 = 0x%lx\n", newthr->regs.r_r15); ++ print_debug("\tr14 = 0x%lx\n", newthr->regs.r_r14); ++ print_debug("\tr13 = 0x%lx\n", newthr->regs.r_r13); ++ print_debug("\tr12 = 0x%lx\n", newthr->regs.r_r12); ++ print_debug("\trbp = 0x%lx\n", newthr->regs.r_rbp); ++ print_debug("\trbx = 0x%lx\n", newthr->regs.r_rbx); ++ print_debug("\tr11 = 0x%lx\n", newthr->regs.r_r11); ++ print_debug("\tr10 = 0x%lx\n", newthr->regs.r_r10); ++ print_debug("\tr9 = 0x%lx\n", newthr->regs.r_r9); ++ print_debug("\tr8 = 0x%lx\n", newthr->regs.r_r8); ++ print_debug("\trax = 0x%lx\n", newthr->regs.r_rax); ++ print_debug("\trcx = 0x%lx\n", newthr->regs.r_rcx); ++ print_debug("\trdx = 0x%lx\n", newthr->regs.r_rdx); ++ print_debug("\trsi = 0x%lx\n", newthr->regs.r_rsi); ++ print_debug("\trdi = 0x%lx\n", newthr->regs.r_rdi); ++ //print_debug("\torig_rax = 0x%lx\n", newthr->regs.orig_rax); ++ print_debug("\trip = 0x%lx\n", newthr->regs.r_rip); ++ print_debug("\tcs = 0x%lx\n", newthr->regs.r_cs); ++ //print_debug("\teflags = 0x%lx\n", newthr->regs.eflags); ++ print_debug("\trsp = 0x%lx\n", newthr->regs.r_rsp); ++ print_debug("\tss = 0x%lx\n", newthr->regs.r_ss); ++ //print_debug("\tfs_base = 0x%lx\n", newthr->regs.fs_base); ++ //print_debug("\tgs_base = 0x%lx\n", newthr->regs.gs_base); ++ //print_debug("\tds = 0x%lx\n", newthr->regs.ds); ++ //print_debug("\tes = 0x%lx\n", newthr->regs.es); ++ //print_debug("\tfs = 0x%lx\n", newthr->regs.fs); ++ //print_debug("\tgs = 0x%lx\n", newthr->regs.gs); + #endif + } + +@@ -826,7 +833,7 @@ static bool read_shared_lib_info(struct + + dyn.d_tag = DT_NULL; + while (dyn.d_tag != DT_DEBUG) { +- if (ps_pdread(ph, (psaddr_t) addr, &dyn, sizeof(ELF_DYN)) != PS_OK) { ++ if (ps_pread(ph, (psaddr_t) addr, &dyn, sizeof(ELF_DYN)) != PS_OK) { + print_debug("can't read debug info from _DYNAMIC\n"); + return false; + } +@@ -836,19 +843,23 @@ static bool read_shared_lib_info(struct + // we have got Dyn entry with DT_DEBUG + debug_base = dyn.d_un.d_ptr; + // at debug_base we have struct r_debug. This has first link map in r_map field +- if (ps_pdread(ph, (psaddr_t) debug_base + FIRST_LINK_MAP_OFFSET, ++ if (ps_pread(ph, (psaddr_t) debug_base + FIRST_LINK_MAP_OFFSET, + &first_link_map_addr, sizeof(uintptr_t)) != PS_OK) { + print_debug("can't read first link map address\n"); + return false; + } + + // read ld_base address from struct r_debug +- if (ps_pdread(ph, (psaddr_t) debug_base + LD_BASE_OFFSET, &ld_base_addr, ++ // XXX: There is no r_ldbase member on BSD ++/* ++ if (ps_pread(ph, (psaddr_t) debug_base + LD_BASE_OFFSET, &ld_base_addr, + sizeof(uintptr_t)) != PS_OK) { + print_debug("can't read ld base address\n"); + return false; + } + ph->core->ld_base_addr = ld_base_addr; ++*/ ++ ph->core->ld_base_addr = 0; + + print_debug("interpreter base address is 0x%lx\n", ld_base_addr); + +@@ -870,14 +881,14 @@ static bool read_shared_lib_info(struct + // address mentioned in shared object and the actual virtual base where runtime + // linker loaded it. We use "base diff" in read_lib_segments call below. + +- if (ps_pdread(ph, (psaddr_t) link_map_addr + LINK_MAP_ADDR_OFFSET, ++ if (ps_pread(ph, (psaddr_t) link_map_addr + LINK_MAP_ADDR_OFFSET, + &lib_base_diff, sizeof(uintptr_t)) != PS_OK) { + print_debug("can't read shared object base address diff\n"); + return false; + } + + // read address of the name +- if (ps_pdread(ph, (psaddr_t) link_map_addr + LINK_MAP_NAME_OFFSET, ++ if (ps_pread(ph, (psaddr_t) link_map_addr + LINK_MAP_NAME_OFFSET, + &lib_name_addr, sizeof(uintptr_t)) != PS_OK) { + print_debug("can't read address of shared object name\n"); + return false; +@@ -921,7 +932,7 @@ static bool read_shared_lib_info(struct + } + + // read next link_map address +- if (ps_pdread(ph, (psaddr_t) link_map_addr + LINK_MAP_NEXT_OFFSET, ++ if (ps_pread(ph, (psaddr_t) link_map_addr + LINK_MAP_NEXT_OFFSET, + &link_map_addr, sizeof(uintptr_t)) != PS_OK) { + print_debug("can't read next link in link_map\n"); + return false; +@@ -935,7 +946,6 @@ static bool read_shared_lib_info(struct + struct ps_prochandle* Pgrab_core(const char* exec_file, const char* core_file) { + ELF_EHDR core_ehdr; + ELF_EHDR exec_ehdr; +- ELF_EHDR lib_ehdr; + + struct ps_prochandle* ph = (struct ps_prochandle*) calloc(1, sizeof(struct ps_prochandle)); + if (ph == NULL) { +diff -uNpr ../orig/hotspot/agent/src/os/bsd/ps_proc.c ./hotspot/agent/src/os/bsd/ps_proc.c +--- ../orig/hotspot/agent/src/os/bsd/ps_proc.c 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/ps_proc.c 2009-05-15 09:49:29.000000000 -0400 +@@ -25,20 +25,22 @@ + * + */ + ++#include <limits.h> + #include <stdio.h> + #include <stdlib.h> + #include <string.h> + #include <errno.h> ++#include <sys/types.h> ++#include <sys/wait.h> + #include <sys/ptrace.h> ++#include <sys/param.h> ++#include <sys/user.h> ++#include <elf.h> ++#include <sys/elf_common.h> ++#include <sys/link_elf.h> ++#include <libutil.h> + #include "libproc_impl.h" +- +-#if defined(x86_64) && !defined(amd64) +-#define amd64 1 +-#endif +- +-#ifndef __WALL +-#define __WALL 0x40000000 // Copied from /usr/include/bsd/wait.h +-#endif ++#include "elfmacros.h" + + // This file has the libproc implementation specific to live process + // For core files, refer to ps_core.c +@@ -57,46 +59,46 @@ static inline uintptr_t align(uintptr_t + // before calling process_read_data. + + static bool process_read_data(struct ps_prochandle* ph, uintptr_t addr, char *buf, size_t size) { +- long rslt; ++ int rslt; + size_t i, words; + uintptr_t end_addr = addr + size; +- uintptr_t aligned_addr = align(addr, sizeof(long)); ++ uintptr_t aligned_addr = align(addr, sizeof(int)); + + if (aligned_addr != addr) { + char *ptr = (char *)&rslt; + errno = 0; +- rslt = ptrace(PTRACE_PEEKDATA, ph->pid, aligned_addr, 0); ++ rslt = ptrace(PT_READ_D, ph->pid, (caddr_t) aligned_addr, 0); + if (errno) { +- print_debug("ptrace(PTRACE_PEEKDATA, ..) failed for %d bytes @ %lx\n", size, addr); ++ print_debug("ptrace(PT_READ_D, ..) failed for %d bytes @ %lx\n", size, addr); + return false; + } + for (; aligned_addr != addr; aligned_addr++, ptr++); +- for (; ((intptr_t)aligned_addr % sizeof(long)) && aligned_addr < end_addr; ++ for (; ((intptr_t)aligned_addr % sizeof(int)) && aligned_addr < end_addr; + aligned_addr++) + *(buf++) = *(ptr++); + } + +- words = (end_addr - aligned_addr) / sizeof(long); ++ words = (end_addr - aligned_addr) / sizeof(int); + +- // assert((intptr_t)aligned_addr % sizeof(long) == 0); ++ // assert((intptr_t)aligned_addr % sizeof(int) == 0); + for (i = 0; i < words; i++) { + errno = 0; +- rslt = ptrace(PTRACE_PEEKDATA, ph->pid, aligned_addr, 0); +- if (errno) { +- print_debug("ptrace(PTRACE_PEEKDATA, ..) failed for %d bytes @ %lx\n", size, addr); ++ rslt = ptrace(PT_READ_D, ph->pid, (caddr_t) aligned_addr, 0); ++ if (errno) { ++ print_debug("ptrace(PT_READ_D, ..) failed for %d bytes @ %lx\n", size, addr); + return false; + } +- *(long *)buf = rslt; +- buf += sizeof(long); +- aligned_addr += sizeof(long); ++ *(int *)buf = rslt; ++ buf += sizeof(int); ++ aligned_addr += sizeof(int); + } + + if (aligned_addr != end_addr) { + char *ptr = (char *)&rslt; + errno = 0; +- rslt = ptrace(PTRACE_PEEKDATA, ph->pid, aligned_addr, 0); ++ rslt = ptrace(PT_READ_D, ph->pid, (caddr_t) aligned_addr, 0); + if (errno) { +- print_debug("ptrace(PTRACE_PEEKDATA, ..) failed for %d bytes @ %lx\n", size, addr); ++ print_debug("ptrace(PT_READ_D, ..) failed for %d bytes @ %lx\n", size, addr); + return false; + } + for (; aligned_addr != end_addr; aligned_addr++) +@@ -111,45 +113,28 @@ static bool process_write_data(struct ps + return false; + } + +-// "user" should be a pointer to a user_regs_struct +-static bool process_get_lwp_regs(struct ps_prochandle* ph, pid_t pid, struct user_regs_struct *user) { ++// "user" should be a pointer to a reg ++static bool process_get_lwp_regs(struct ps_prochandle* ph, pid_t pid, struct reg *user) { + // we have already attached to all thread 'pid's, just use ptrace call + // to get regset now. Note that we don't cache regset upfront for processes. +-// Bsd on x86 and sparc are different. On x86 ptrace(PTRACE_GETREGS, ...) +-// uses pointer from 4th argument and ignores 3rd argument. On sparc it uses +-// pointer from 3rd argument and ignores 4th argument +-#if defined(sparc) || defined(sparcv9) +-#define ptrace_getregs(request, pid, addr, data) ptrace(request, pid, addr, data) +-#else +-#define ptrace_getregs(request, pid, addr, data) ptrace(request, pid, data, addr) +-#endif +- +-#ifdef _LP64 +-#ifdef PTRACE_GETREGS64 +-#define PTRACE_GETREGS_REQ PTRACE_GETREGS64 +-#endif +-#else +-#if defined(PTRACE_GETREGS) || defined(PT_GETREGS) +-#define PTRACE_GETREGS_REQ PTRACE_GETREGS +-#endif +-#endif /* _LP64 */ +- +-#ifdef PTRACE_GETREGS_REQ +- if (ptrace_getregs(PTRACE_GETREGS_REQ, pid, user, NULL) < 0) { ++ if (ptrace(PT_GETREGS, pid, (caddr_t) user, 0) < 0) { + print_debug("ptrace(PTRACE_GETREGS, ...) failed for lwp %d\n", pid); + return false; + } + return true; +-#else +- print_debug("ptrace(PTRACE_GETREGS, ...) not supported\n"); +- return false; +-#endif ++} ++ ++// fill in ptrace_lwpinfo for lid ++static bool process_get_lwp_info(struct ps_prochandle *ph, lwpid_t lwp_id, void *linfo) { ++ errno = 0; ++ ptrace(PT_LWPINFO, lwp_id, linfo, sizeof(struct ptrace_lwpinfo)); + ++ return (errno == 0)? true: false; + } + + // attach to a process/thread specified by "pid" + static bool ptrace_attach(pid_t pid) { +- if (ptrace(PTRACE_ATTACH, pid, NULL, NULL) < 0) { ++ if (ptrace(PT_ATTACH, pid, NULL, 0) < 0) { + print_debug("ptrace(PTRACE_ATTACH, ..) failed for %d\n", pid); + return false; + } else { +@@ -158,10 +143,6 @@ static bool ptrace_attach(pid_t pid) { + do { + // Wait for debuggee to stop. + ret = waitpid(pid, &status, 0); +- if (ret == -1 && errno == ECHILD) { +- // try cloned process. +- ret = waitpid(pid, &status, __WALL); +- } + if (ret >= 0) { + if (WIFSTOPPED(status)) { + // Debuggee stopped. +@@ -194,85 +175,222 @@ static bool ptrace_attach(pid_t pid) { + // functions for obtaining library information + // ------------------------------------------------------- + +-/* +- * splits a string _str_ into substrings with delimiter _delim_ by replacing old * delimiters with _new_delim_ (ideally, '\0'). the address of each substring +- * is stored in array _ptrs_ as the return value. the maximum capacity of _ptrs_ * array is specified by parameter _n_. +- * RETURN VALUE: total number of substrings (always <= _n_) +- * NOTE: string _str_ is modified if _delim_!=_new_delim_ +- */ +-static int split_n_str(char * str, int n, char ** ptrs, char delim, char new_delim) +-{ +- int i; +- for(i = 0; i < n; i++) ptrs[i] = NULL; +- if (str == NULL || n < 1 ) return 0; +- +- i = 0; +- +- // skipping leading blanks +- while(*str&&*str==delim) str++; +- +- while(*str&&i<n){ +- ptrs[i++] = str; +- while(*str&&*str!=delim) str++; +- while(*str&&*str==delim) *(str++) = new_delim; +- } +- +- return i; ++// callback for read_thread_info ++static bool add_new_thread(struct ps_prochandle* ph, pthread_t pthread_id, lwpid_t lwp_id) { ++ return add_thread_info(ph, pthread_id, lwp_id) != NULL; + } + ++#if defined(__FreeBSD__) && __FreeBSD_version < 701000 + /* +- * fgets without storing '\n' at the end of the string ++ * TEXT_START_ADDR from binutils/ld/emulparams/<arch_spec>.sh ++ * Not the most robust but good enough. + */ +-static char * fgets_no_cr(char * buf, int n, FILE *fp) +-{ +- char * rslt = fgets(buf, n, fp); +- if (rslt && buf && *buf){ +- char *p = strchr(buf, '\0'); +- if (*--p=='\n') *p='\0'; +- } +- return rslt; +-} + +-// callback for read_thread_info +-static bool add_new_thread(struct ps_prochandle* ph, pthread_t pthread_id, lwpid_t lwp_id) { +- return add_thread_info(ph, pthread_id, lwp_id) != NULL; ++#if defined(amd64) || defined(x86_64) ++#define TEXT_START_ADDR 0x400000 ++#elif defined(i386) ++#define TEXT_START_ADDR 0x8048000 ++#else ++#error TEXT_START_ADDR not defined ++#endif ++ ++#define BUF_SIZE (PATH_MAX + NAME_MAX + 1) ++ ++uintptr_t linkmap_addr(struct ps_prochandle *ph) { ++ uintptr_t ehdr_addr, phdr_addr, dyn_addr, dmap_addr, lmap_addr; ++ ELF_EHDR ehdr; ++ ELF_PHDR *phdrs, *phdr; ++ ELF_DYN *dyns, *dyn; ++ struct r_debug dmap; ++ unsigned long hdrs_size; ++ unsigned int i; ++ ++ /* read ELF_EHDR at TEXT_START_ADDR and validate */ ++ ++ ehdr_addr = (uintptr_t)TEXT_START_ADDR; ++ ++ if (process_read_data(ph, ehdr_addr, (char *)&ehdr, sizeof(ehdr)) != true) { ++ print_debug("process_read_data failed for ehdr_addr %p\n", ehdr_addr); ++ return (0); ++ } ++ ++ if (!IS_ELF(ehdr) || ++ ehdr.e_ident[EI_CLASS] != ELF_TARG_CLASS || ++ ehdr.e_ident[EI_DATA] != ELF_TARG_DATA || ++ ehdr.e_ident[EI_VERSION] != EV_CURRENT || ++ ehdr.e_phentsize != sizeof(ELF_PHDR) || ++ ehdr.e_version != ELF_TARG_VER || ++ ehdr.e_machine != ELF_TARG_MACH) { ++ print_debug("not an ELF_EHDR at %p\n", ehdr_addr); ++ return (0); ++ } ++ ++ /* allocate space for all ELF_PHDR's and read */ ++ ++ phdr_addr = ehdr_addr + ehdr.e_phoff; ++ hdrs_size = ehdr.e_phnum * sizeof(ELF_PHDR); ++ ++ if ((phdrs = malloc(hdrs_size)) == NULL) ++ return (0); ++ ++ if (process_read_data(ph, phdr_addr, (char *)phdrs, hdrs_size) != true) { ++ print_debug("process_read_data failed for phdr_addr %p\n", phdr_addr); ++ return (0); ++ } ++ ++ /* find PT_DYNAMIC section */ ++ ++ for (i = 0, phdr = phdrs; i < ehdr.e_phnum; i++, phdr++) { ++ if (phdr->p_type == PT_DYNAMIC) ++ break; ++ } ++ ++ if (i >= ehdr.e_phnum) { ++ print_debug("PT_DYNAMIC section not found!\n"); ++ free(phdrs); ++ return (0); ++ } ++ ++ /* allocate space and read in ELF_DYN headers */ ++ ++ dyn_addr = phdr->p_vaddr; ++ hdrs_size = phdr->p_memsz; ++ free(phdrs); ++ ++ if ((dyns = malloc(hdrs_size)) == NULL) ++ return (0); ++ ++ if (process_read_data(ph, dyn_addr, (char *)dyns, hdrs_size) != true) { ++ print_debug("process_read_data failed for dyn_addr %p\n", dyn_addr); ++ free(dyns); ++ return (0); ++ } ++ ++ /* find DT_DEBUG */ ++ ++ dyn = dyns; ++ while (dyn->d_tag != DT_DEBUG && dyn->d_tag != DT_NULL) { ++ dyn++; ++ } ++ ++ if (dyn->d_tag != DT_DEBUG) { ++ print_debug("failed to find DT_DEBUG\n"); ++ free(dyns); ++ return (0); ++ } ++ ++ /* read struct r_debug into dmap */ ++ ++ dmap_addr = (uintptr_t)dyn->d_un.d_ptr; ++ free(dyns); ++ ++ if (process_read_data(ph, dmap_addr, (char *)&dmap, sizeof(dmap)) != true) { ++ print_debug("process_read_data failed for dmap_addr %p\n", dmap_addr); ++ return (0); ++ } ++ ++ lmap_addr = (uintptr_t)dmap.r_map; ++ ++ return (lmap_addr); + } ++#endif // __FreeBSD__ && __FreeBSD_version < 701000 + + static bool read_lib_info(struct ps_prochandle* ph) { +- char fname[32]; +- char buf[256]; +- FILE *fp = NULL; +- +- sprintf(fname, "/proc/%d/maps", ph->pid); +- fp = fopen(fname, "r"); +- if (fp == NULL) { +- print_debug("can't open /proc/%d/maps file\n", ph->pid); +- return false; ++#if defined(__FreeBSD__) && __FreeBSD_version >= 701000 ++ struct kinfo_vmentry *freep, *kve; ++ int i, cnt; ++ ++ freep = kinfo_getvmmap(ph->pid, &cnt); ++ if (freep == NULL) { ++ print_debug("can't get vm map for pid\n", ph->pid); ++ return false; + } + +- while(fgets_no_cr(buf, 256, fp)){ +- char * word[6]; +- int nwords = split_n_str(buf, 6, word, ' ', '\0'); +- if (nwords > 5 && find_lib(ph, word[5]) == false) { +- intptr_t base; +- lib_info* lib; +- sscanf(word[0], "%lx", &base); +- if ((lib = add_lib_info(ph, word[5], (uintptr_t)base)) == NULL) ++ for (i = 0; i < cnt; i++) { ++ kve = &freep[i]; ++ if ((kve->kve_flags & KVME_FLAG_COW) && ++ kve->kve_path != NULL && ++ strlen(kve->kve_path) > 0) { ++ ++ if (find_lib(ph, kve->kve_path) == false) { ++ lib_info* lib; ++ if ((lib = add_lib_info(ph, kve->kve_path, ++ (uintptr_t) kve->kve_start)) == NULL) + continue; // ignore, add_lib_info prints error + +- // we don't need to keep the library open, symtab is already +- // built. Only for core dump we need to keep the fd open. +- close(lib->fd); +- lib->fd = -1; ++ // we don't need to keep the library open, symtab is already ++ // built. Only for core dump we need to keep the fd open. ++ close(lib->fd); ++ lib->fd = -1; ++ } + } + } +- fclose(fp); ++ ++ free(freep); ++ ++ return true; ++#else ++ char *l_name; ++ struct link_map *lmap; ++ uintptr_t lmap_addr; ++ ++ if ((l_name = malloc(BUF_SIZE)) == NULL) ++ return false; ++ ++ if ((lmap = malloc(sizeof(*lmap))) == NULL) { ++ free(l_name); ++ return false; ++ } ++ ++ lmap_addr = linkmap_addr(ph); ++ ++ if (lmap_addr == 0) { ++ free(l_name); ++ free(lmap); ++ return false; ++ } ++ ++ do { ++ if (process_read_data(ph, lmap_addr, (char *)lmap, sizeof(*lmap)) != true) { ++ print_debug("process_read_data failed for lmap_addr %p\n", lmap_addr); ++ free (l_name); ++ free (lmap); ++ return false; ++ } ++ ++ if (process_read_data(ph, (uintptr_t)lmap->l_name, l_name, ++ BUF_SIZE) != true) { ++ print_debug("process_read_data failed for lmap->l_name %p\n", ++ lmap->l_name); ++ free (l_name); ++ free (lmap); ++ return false; ++ } ++ ++ if (find_lib(ph, l_name) == false) { ++ lib_info* lib; ++ if ((lib = add_lib_info(ph, l_name, ++ (uintptr_t) lmap->l_addr)) == NULL) ++ continue; // ignore, add_lib_info prints error ++ ++ // we don't need to keep the library open, symtab is already ++ // built. Only for core dump we need to keep the fd open. ++ close(lib->fd); ++ lib->fd = -1; ++ } ++ lmap_addr = (uintptr_t)lmap->l_next; ++ } while (lmap->l_next != NULL); ++ ++ free (l_name); ++ free (lmap); ++ + return true; ++#endif + } + + // detach a given pid + static bool ptrace_detach(pid_t pid) { +- if (pid && ptrace(PTRACE_DETACH, pid, NULL, NULL) < 0) { ++ if (pid && ptrace(PT_DETACH, pid, (caddr_t)1, 0) < 0) { + print_debug("ptrace(PTRACE_DETACH, ..) failed for %d\n", pid); + return false; + } else { +@@ -280,24 +398,16 @@ static bool ptrace_detach(pid_t pid) { + } + } + +-// detach all pids of a ps_prochandle +-static void detach_all_pids(struct ps_prochandle* ph) { +- thread_info* thr = ph->threads; +- while (thr) { +- ptrace_detach(thr->lwp_id); +- thr = thr->next; +- } +-} +- + static void process_cleanup(struct ps_prochandle* ph) { +- detach_all_pids(ph); ++ ptrace_detach(ph->pid); + } + + static ps_prochandle_ops process_ops = { +- release: process_cleanup, +- p_pread: process_read_data, +- p_pwrite: process_write_data, +- get_lwp_regs: process_get_lwp_regs ++ .release= process_cleanup, ++ .p_pread= process_read_data, ++ .p_pwrite= process_write_data, ++ .get_lwp_regs= process_get_lwp_regs, ++ .get_lwp_info= process_get_lwp_info + }; + + // attach to the process. One and only one exposed stuff +@@ -324,21 +434,14 @@ struct ps_prochandle* Pgrab(pid_t pid) { + // read library info and symbol tables, must do this before attaching threads, + // as the symbols in the pthread library will be used to figure out + // the list of threads within the same process. +- read_lib_info(ph); ++ if (read_lib_info(ph) != true) { ++ ptrace_detach(pid); ++ free(ph); ++ return NULL; ++ } + + // read thread info + read_thread_info(ph, add_new_thread); + +- // attach to the threads +- thr = ph->threads; +- while (thr) { +- // don't attach to the main thread again +- if (ph->pid != thr->lwp_id && ptrace_attach(thr->lwp_id) != true) { +- // even if one attach fails, we get return NULL +- Prelease(ph); +- return NULL; +- } +- thr = thr->next; +- } + return ph; + } +diff -uNpr ../orig/hotspot/agent/src/os/bsd/salibelf.c ./hotspot/agent/src/os/bsd/salibelf.c +--- ../orig/hotspot/agent/src/os/bsd/salibelf.c 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/salibelf.c 2009-05-14 23:41:34.000000000 -0400 +@@ -28,6 +28,7 @@ + #include "salibelf.h" + #include <stdlib.h> + #include <unistd.h> ++#include <string.h> + + extern void print_debug(const char*,...); + +diff -uNpr ../orig/hotspot/agent/src/os/bsd/symtab.c ./hotspot/agent/src/os/bsd/symtab.c +--- ../orig/hotspot/agent/src/os/bsd/symtab.c 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/symtab.c 2009-05-14 23:41:34.000000000 -0400 +@@ -26,13 +26,14 @@ + */ + + #include <unistd.h> +-#include <sys/procfs.h> + #include <search.h> + #include <stdlib.h> + #include <string.h> ++#include "hsearch_r.h" + #include "symtab.h" + #include "salibelf.h" + ++extern void print_debug(const char*,...); + + // ---------------------------------------------------- + // functions for symbol lookups +@@ -59,7 +60,6 @@ typedef struct symtab { + // read symbol table from given fd. + struct symtab* build_symtab(int fd) { + ELF_EHDR ehdr; +- char *names = NULL; + struct symtab* symtab = NULL; + + // Reading of elf header +@@ -68,18 +68,22 @@ struct symtab* build_symtab(int fd) { + ELF_SHDR* shbuf = NULL; + ELF_SHDR* cursct = NULL; + ELF_PHDR* phbuf = NULL; +- ELF_PHDR* phdr = NULL; ++ int symtab_found = 0; ++ int dynsym_found = 0; ++ uint32_t symsection = SHT_SYMTAB; + + uintptr_t baseaddr = (uintptr_t)-1; + + lseek(fd, (off_t)0L, SEEK_SET); + if (! read_elf_header(fd, &ehdr)) { ++ print_debug("not an ELF header\n"); + // not an elf + return NULL; + } + + // read ELF header + if ((shbuf = read_section_header_table(fd, &ehdr)) == NULL) { ++ print_debug("can't read section header\n"); + goto quit; + } + +@@ -88,23 +92,35 @@ struct symtab* build_symtab(int fd) { + scn_cache = (struct elf_section *) + calloc(ehdr.e_shnum * sizeof(struct elf_section), 1); + if (scn_cache == NULL) { ++ print_debug("can't read scn_cache\n"); + goto quit; + } + + for (cursct = shbuf, cnt = 0; cnt < ehdr.e_shnum; cnt++) { + scn_cache[cnt].c_shdr = cursct; +- if (cursct->sh_type == SHT_SYMTAB || cursct->sh_type == SHT_STRTAB) { ++ if (cursct->sh_type == SHT_SYMTAB || ++ cursct->sh_type == SHT_STRTAB || ++ cursct->sh_type == SHT_DYNSYM) { + if ( (scn_cache[cnt].c_data = read_section_data(fd, &ehdr, cursct)) == NULL) { ++ print_debug("can't read section_data\n"); + goto quit; + } + } ++ if (cursct->sh_type == SHT_SYMTAB) ++ symtab_found++; ++ ++ if (cursct->sh_type == SHT_DYNSYM) ++ dynsym_found++; + cursct++; + } + ++ if (!symtab_found && dynsym_found) ++ symsection = SHT_DYNSYM; ++ + for (cnt = 1; cnt < ehdr.e_shnum; cnt++) { + ELF_SHDR *shdr = scn_cache[cnt].c_shdr; + +- if (shdr->sh_type == SHT_SYMTAB) { ++ if (shdr->sh_type == symsection) { + ELF_SYM *syms; + int j, n, rslt; + size_t size; +@@ -116,6 +132,7 @@ struct symtab* build_symtab(int fd) { + // guarantee(symtab == NULL, "multiple symtab"); + symtab = (struct symtab*)calloc(1, sizeof(struct symtab)); + if (symtab == NULL) { ++ print_debug("can't allocate symtab\n"); + goto quit; + } + // the symbol table +diff -uNpr ../orig/hotspot/agent/src/os/bsd/test.c ./hotspot/agent/src/os/bsd/test.c +--- ../orig/hotspot/agent/src/os/bsd/test.c 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/os/bsd/test.c 2009-05-14 23:41:34.000000000 -0400 +@@ -47,7 +47,7 @@ int main(int argc, char** argv) { + } + + default: { +- printf("usage %s <pid> or %s <exec file> <core file>\n"); ++ fprintf(stderr, "usage %s <pid> or %s <exec file> <core file>\n"); + return 1; + } + } +diff -uNpr ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/HotSpotAgent.java ./hotspot/agent/src/share/classes/sun/jvm/hotspot/HotSpotAgent.java +--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/HotSpotAgent.java 2009-04-24 03:30:48.000000000 -0400 ++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/HotSpotAgent.java 2009-05-14 23:41:34.000000000 -0400 +@@ -28,6 +28,7 @@ import java.io.PrintStream; + import java.net.*; + import java.rmi.*; + import sun.jvm.hotspot.debugger.*; ++import sun.jvm.hotspot.debugger.bsd.*; + import sun.jvm.hotspot.debugger.dbx.*; + import sun.jvm.hotspot.debugger.proc.*; + import sun.jvm.hotspot.debugger.remote.*; +@@ -337,6 +338,8 @@ public class HotSpotAgent { + setupDebuggerWin32(); + } else if (os.equals("linux")) { + setupDebuggerLinux(); ++ } else if (os.equals("bsd")) { ++ setupDebuggerBsd(); + } else { + // Add support for more operating systems here + throw new DebuggerException("Operating system " + os + " not yet supported"); +@@ -392,6 +395,10 @@ public class HotSpotAgent { + db = new HotSpotTypeDataBase(machDesc, + new LinuxVtblAccess(debugger, jvmLibNames), + debugger, jvmLibNames); ++ } else if (os.equals("bsd")) { ++ db = new HotSpotTypeDataBase(machDesc, ++ new BsdVtblAccess(debugger, jvmLibNames), ++ debugger, jvmLibNames); + } else { + throw new DebuggerException("OS \"" + os + "\" not yet supported (no VtblAccess yet)"); + } +@@ -557,6 +564,8 @@ public class HotSpotAgent { + setupJVMLibNamesWin32(); + } else if (os.equals("linux")) { + setupJVMLibNamesLinux(); ++ } else if (os.equals("bsd")) { ++ setupJVMLibNamesBsd(); + } else { + throw new RuntimeException("Unknown OS type"); + } +@@ -638,6 +647,31 @@ public class HotSpotAgent { + jvmLibNames = new String[] { "libjvm.so", "libjvm_g.so" }; + } + ++ // ++ // BSD ++ // ++ ++ private void setupDebuggerBsd() { ++ setupJVMLibNamesBsd(); ++ ++ if (cpu.equals("x86")) { ++ machDesc = new MachineDescriptionIntelX86(); ++ } else if (cpu.equals("amd64")) { ++ machDesc = new MachineDescriptionAMD64(); ++ } else { ++ throw new DebuggerException("BSD only supported on x86/amd64"); ++ } ++ ++ BsdDebuggerLocal dbg = new BsdDebuggerLocal(machDesc, !isServer); ++ debugger = dbg; ++ ++ attachDebugger(); ++ } ++ ++ private void setupJVMLibNamesBsd() { ++ jvmLibNames = new String[] { "libjvm.so", "libjvm_g.so" }; ++ } ++ + /** Convenience routine which should be called by per-platform + debugger setup. Should not be called when startupMode is + REMOTE_MODE. */ +diff -uNpr ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java ./hotspot/agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java +--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java 2009-04-24 03:30:49.000000000 -0400 ++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/bugspot/BugSpotAgent.java 2009-05-14 23:41:34.000000000 -0400 +@@ -29,6 +29,7 @@ import java.net.*; + import java.rmi.*; + import sun.jvm.hotspot.*; + import sun.jvm.hotspot.debugger.*; ++import sun.jvm.hotspot.debugger.bsd.*; + import sun.jvm.hotspot.debugger.dbx.*; + import sun.jvm.hotspot.debugger.proc.*; + import sun.jvm.hotspot.debugger.cdbg.*; +@@ -516,6 +517,8 @@ public class BugSpotAgent { + setupDebuggerWin32(); + } else if (os.equals("linux")) { + setupDebuggerLinux(); ++ } else if (os.equals("bsd")) { ++ setupDebuggerBsd(); + } else { + // Add support for more operating systems here + throw new DebuggerException("Operating system " + os + " not yet supported"); +@@ -567,6 +570,9 @@ public class BugSpotAgent { + } else if (os.equals("linux")) { + db = new HotSpotTypeDataBase(machDesc, new LinuxVtblAccess(debugger, jvmLibNames), + debugger, jvmLibNames); ++ } else if (os.equals("bsd")) { ++ db = new HotSpotTypeDataBase(machDesc, new BsdVtblAccess(debugger, jvmLibNames), ++ debugger, jvmLibNames); + } else { + throw new DebuggerException("OS \"" + os + "\" not yet supported (no VtblAccess implemented yet)"); + } +@@ -739,6 +745,8 @@ public class BugSpotAgent { + setupJVMLibNamesWin32(); + } else if (os.equals("linux")) { + setupJVMLibNamesLinux(); ++ } else if (os.equals("bsd")) { ++ setupJVMLibNamesBsd(); + } else { + throw new RuntimeException("Unknown OS type"); + } +@@ -822,6 +830,34 @@ public class BugSpotAgent { + setupJVMLibNamesSolaris(); + } + ++ // ++ // BSD ++ // ++ ++ private void setupDebuggerBsd() { ++ setupJVMLibNamesBsd(); ++ ++ if (cpu.equals("x86")) { ++ machDesc = new MachineDescriptionIntelX86(); ++ } else if (cpu.equals("amd64")) { ++ machDesc = new MachineDescriptionAMD64(); ++ } else { ++ throw new DebuggerException("Bsd only supported on x86/amd64"); ++ } ++ ++ // Note we do not use a cache for the local debugger in server ++ // mode; it will be taken care of on the client side (once remote ++ // debugging is implemented). ++ ++ debugger = new BsdDebuggerLocal(machDesc, !isServer); ++ attachDebugger(); ++ } ++ ++ private void setupJVMLibNamesBsd() { ++ // same as solaris ++ setupJVMLibNamesSolaris(); ++ } ++ + /** Convenience routine which should be called by per-platform + debugger setup. Should not be called when startupMode is + REMOTE_MODE. */ +diff -uNpr ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdCDebugger.java ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdCDebugger.java +--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdCDebugger.java 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdCDebugger.java 2009-05-14 23:41:34.000000000 -0400 +@@ -30,10 +30,8 @@ import sun.jvm.hotspot.debugger.*; + import sun.jvm.hotspot.debugger.cdbg.*; + import sun.jvm.hotspot.debugger.x86.*; + import sun.jvm.hotspot.debugger.amd64.*; +-import sun.jvm.hotspot.debugger.sparc.*; + import sun.jvm.hotspot.debugger.bsd.x86.*; + import sun.jvm.hotspot.debugger.bsd.amd64.*; +-import sun.jvm.hotspot.debugger.bsd.sparc.*; + import sun.jvm.hotspot.utilities.*; + + class BsdCDebugger implements CDebugger { +@@ -99,13 +97,6 @@ class BsdCDebugger implements CDebugger + Address pc = context.getRegisterAsAddress(AMD64ThreadContext.RIP); + if (pc == null) return null; + return new BsdAMD64CFrame(dbg, rbp, pc); +- } else if (cpu.equals("sparc")) { +- SPARCThreadContext context = (SPARCThreadContext) thread.getContext(); +- Address sp = context.getRegisterAsAddress(SPARCThreadContext.R_SP); +- if (sp == null) return null; +- Address pc = context.getRegisterAsAddress(SPARCThreadContext.R_O7); +- if (pc == null) return null; +- return new BsdSPARCCFrame(dbg, sp, pc, BsdDebuggerLocal.getAddressSize()); + } else { + throw new DebuggerException(cpu + " is not yet supported"); + } +diff -uNpr ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThreadContextFactory.java ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThreadContextFactory.java +--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThreadContextFactory.java 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThreadContextFactory.java 2009-05-14 23:41:34.000000000 -0400 +@@ -26,9 +26,7 @@ package sun.jvm.hotspot.debugger.bsd; + + import sun.jvm.hotspot.debugger.*; + import sun.jvm.hotspot.debugger.bsd.amd64.*; +-import sun.jvm.hotspot.debugger.bsd.ia64.*; + import sun.jvm.hotspot.debugger.bsd.x86.*; +-import sun.jvm.hotspot.debugger.bsd.sparc.*; + + class BsdThreadContextFactory { + static ThreadContext createThreadContext(BsdDebugger dbg) { +@@ -37,10 +35,6 @@ class BsdThreadContextFactory { + return new BsdX86ThreadContext(dbg); + } else if (cpu.equals("amd64")) { + return new BsdAMD64ThreadContext(dbg); +- } else if (cpu.equals("ia64")) { +- return new BsdIA64ThreadContext(dbg); +- } else if (cpu.equals("sparc")) { +- return new BsdSPARCThreadContext(dbg); + } else { + throw new RuntimeException("cpu " + cpu + " is not yet supported"); + } +diff -uNpr ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/Threads.java ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/Threads.java +--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/Threads.java 2009-04-24 03:30:51.000000000 -0400 ++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/Threads.java 2009-05-14 23:41:34.000000000 -0400 +@@ -37,6 +37,8 @@ import sun.jvm.hotspot.runtime.linux_x86 + import sun.jvm.hotspot.runtime.linux_ia64.LinuxIA64JavaThreadPDAccess; + import sun.jvm.hotspot.runtime.linux_amd64.LinuxAMD64JavaThreadPDAccess; + import sun.jvm.hotspot.runtime.linux_sparc.LinuxSPARCJavaThreadPDAccess; ++import sun.jvm.hotspot.runtime.bsd_x86.BsdX86JavaThreadPDAccess; ++import sun.jvm.hotspot.runtime.bsd_amd64.BsdAMD64JavaThreadPDAccess; + import sun.jvm.hotspot.utilities.*; + + public class Threads { +@@ -90,7 +92,12 @@ public class Threads { + } else if (cpu.equals("sparc")) { + access = new LinuxSPARCJavaThreadPDAccess(); + } +- ++ } else if (os.equals("bsd")) { ++ if (cpu.equals("x86")) { ++ access = new BsdX86JavaThreadPDAccess(); ++ } else if (cpu.equals("amd64")) { ++ access = new BsdAMD64JavaThreadPDAccess(); ++ } + } + + if (access == null) { +diff -uNpr ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd/BsdSignals.java ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd/BsdSignals.java +--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd/BsdSignals.java 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd/BsdSignals.java 2009-05-15 09:51:39.000000000 -0400 +@@ -28,37 +28,36 @@ public class BsdSignals { + private static String[] signalNames = { + "", /* No signal 0 */ + "SIGHUP", /* hangup */ +- "SIGINT", /* interrupt (rubout) */ +- "SIGQUIT", /* quit (ASCII FS) */ +- "SIGILL", /* illegal instruction (not reset when caught) */ ++ "SIGINT", /* interrupt */ ++ "SIGQUIT", /* quit */ ++ "SIGILL", /* illegal instr. (not reset when caught) */ + "SIGTRAP", /* trace trap (not reset when caught) */ +- "SIGABRT", /* used by abort, replace SIGIOT in the future */ +- "SIGIOT", +- "SIGBUS", ++ "SIGABRT", /* abort() */ ++ "SIGEMT", /* EMT instruction */ + "SIGFPE", /* floating point exception */ + "SIGKILL", /* kill (cannot be caught or ignored) */ +- "SIGUSR1", /* user defined signal 1 */ ++ "SIGBUS", /* bus error */ + "SIGSEGV", /* segmentation violation */ +- "SIGUSR2", /* user defined signal 2 */ ++ "SIGSYS", /* non-existent system call invoked */ + "SIGPIPE", /* write on a pipe with no one to read it */ + "SIGALRM", /* alarm clock */ + "SIGTERM", /* software termination signal from kill */ +- "SIGSTKFLT", +- "SIGCHLD", /* child status change alias */ +- "SIGCONT", /* stopped process has been continued */ +- "SIGSTOP", /* stop (cannot be caught or ignored) */ +- "SIGTSTP", /* user stop requested from tty */ +- "SIGTTIN", /* background tty read attempted */ +- "SIGTTOU", /* background tty write attempted */ +- "SIGURG", /* urgent socket condition */ +- "SIGXCPU", /* exceeded cpu limit */ ++ "SIGURG", /* urgent condition on IO channel */ ++ "SIGSTOP", /* sendable stop signal not from tty */ ++ "SIGTSTP", /* stop signal from tty */ ++ "SIGCONT", /* continue a stopped process */ ++ "SIGCHLD", /* to parent on child stop or exit */ ++ "SIGTTIN", /* to readers pgrp upon background tty read */ ++ "SIGTTOU", /* like TTIN if (tp->t_local<OSTOP) */ ++ "SIGIO", /* input/output possible signal */ ++ "SIGXCPU", /* exceeded CPU time limit */ + "SIGXFSZ", /* exceeded file size limit */ +- "SIGVTALRM", /* virtual timer expired */ +- "SIGPROF", /* profiling timer expired */ +- "SIGWINCH", /* window size change */ +- "SIGPOLL", /* pollable event occured */ +- "SIGPWR", /* power-fail restart */ +- "SIGSYS" ++ "SIGVTALRM", /* virtual time alarm */ ++ "SIGPROF", /* profiling time alarm */ ++ "SIGWINCH", /* window size changes */ ++ "SIGINFO", /* information request */ ++ "SIGUSR1", /* user defined signal 1 */ ++ "SIGUSR2" /* user defined signal 2 */ + }; + + public static String getSignalName(int sigNum) { +diff -uNpr ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd_x86/BsdSignals.java ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd_x86/BsdSignals.java +--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd_x86/BsdSignals.java 2009-05-14 23:40:16.000000000 -0400 ++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd_x86/BsdSignals.java 2009-05-14 23:41:34.000000000 -0400 +@@ -32,33 +32,32 @@ public class BsdSignals { + "SIGQUIT", /* quit (ASCII FS) */ + "SIGILL", /* illegal instruction (not reset when caught) */ + "SIGTRAP", /* trace trap (not reset when caught) */ +- "SIGABRT", /* used by abort, replace SIGIOT in the future */ +- "SIGIOT", +- "SIGBUS", ++ "SIGABRT", /* abort() */ ++ "SIGEMT", /* EMT instruction */ + "SIGFPE", /* floating point exception */ + "SIGKILL", /* kill (cannot be caught or ignored) */ +- "SIGUSR1", /* user defined signal 1 */ ++ "SIGBUS", /* bus error */ + "SIGSEGV", /* segmentation violation */ +- "SIGUSR2", /* user defined signal 2 */ ++ "SIGSYS", /* non-existent system call invoked */ + "SIGPIPE", /* write on a pipe with no one to read it */ + "SIGALRM", /* alarm clock */ + "SIGTERM", /* software termination signal from kill */ +- "SIGSTKFLT", +- "SIGCHLD", /* child status change alias */ +- "SIGCONT", /* stopped process has been continued */ +- "SIGSTOP", /* stop (cannot be caught or ignored) */ +- "SIGTSTP", /* user stop requested from tty */ +- "SIGTTIN", /* background tty read attempted */ +- "SIGTTOU", /* background tty write attempted */ +- "SIGURG", /* urgent socket condition */ +- "SIGXCPU", /* exceeded cpu limit */ ++ "SIGURG", /* urgent condition on IO channel */ ++ "SIGSTOP", /* sendable stop signal not from tty */ ++ "SIGTSTP", /* stop signal from tty */ ++ "SIGCONT", /* continue a stopped process */ ++ "SIGCHLD", /* to parent on child stop or exit */ ++ "SIGTTIN", /* to readers pgrp upon background tty read */ ++ "SIGTTOU", /* like TTIN if (tp->t_local<OSTOP) */ ++ "SIGIO", /* input/output possible signal */ ++ "SIGXCPU", /* exceeded CPU time limit */ + "SIGXFSZ", /* exceeded file size limit */ +- "SIGVTALRM", /* virtual timer expired */ +- "SIGPROF", /* profiling timer expired */ +- "SIGWINCH", /* window size change */ +- "SIGPOLL", /* pollable event occured */ +- "SIGPWR", /* power-fail restart */ +- "SIGSYS" ++ "SIGVTALRM", /* virtual time alarm */ ++ "SIGPROF", /* profiling time alarm */ ++ "SIGWINCH", /* window size changes */ ++ "SIGINFO", /* information request */ ++ "SIGUSR1", /* user defined signal 1 */ ++ "SIGUSR2" /* user defined signal 2 */ + }; + + public static String getSignalName(int sigNum) { +diff -uNpr ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/PlatformInfo.java ./hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/PlatformInfo.java +--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/PlatformInfo.java 2009-04-24 03:30:51.000000000 -0400 ++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/PlatformInfo.java 2009-05-14 23:41:34.000000000 -0400 +@@ -37,6 +37,14 @@ public class PlatformInfo { + return "solaris"; + } else if (os.equals("Linux")) { + return "linux"; ++ } else if (os.equals("FreeBSD")) { ++ return "bsd"; ++ } else if (os.equals("NetBSD")) { ++ return "bsd"; ++ } else if (os.equals("OpenBSD")) { ++ return "bsd"; ++ } else if (os.equals("Darwin")) { ++ return "bsd"; + } else if (os.startsWith("Windows")) { + return "win32"; + } else { +diff -uNpr ../orig/hotspot/build/bsd/Makefile ./hotspot/build/bsd/Makefile +--- ../orig/hotspot/build/bsd/Makefile 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/Makefile 2009-05-14 23:41:33.000000000 -0400 @@ -198,7 +198,8 @@ checks: check_os_version check_j2se_vers # Solaris 2.5.1, 2.6). # Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok. @@ -462,9 +2469,9 @@ diff -upr ../orig/hotspot/build/bsd/Makefile ./hotspot/build/bsd/Makefile OS_VERSION := $(shell uname -r) EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION)) -diff -upr ../orig/hotspot/build/bsd/makefiles/buildtree.make ./hotspot/build/bsd/makefiles/buildtree.make ---- ../orig/hotspot/build/bsd/makefiles/buildtree.make 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/build/bsd/makefiles/buildtree.make 2009-05-05 15:01:26.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/makefiles/buildtree.make ./hotspot/build/bsd/makefiles/buildtree.make +--- ../orig/hotspot/build/bsd/makefiles/buildtree.make 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/makefiles/buildtree.make 2009-05-14 23:41:33.000000000 -0400 @@ -273,10 +273,11 @@ env.sh: $(BUILDTREE_MAKE) [ -n "$$JAVA_HOME" ] && { echo ": \$${JAVA_HOME:=$${JAVA_HOME}}"; }; \ { \ @@ -478,9 +2485,9 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/buildtree.make ./hotspot/build/bsd ) > $@ env.csh: env.sh -diff -upr ../orig/hotspot/build/bsd/makefiles/cscope.make ./hotspot/build/bsd/makefiles/cscope.make ---- ../orig/hotspot/build/bsd/makefiles/cscope.make 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/build/bsd/makefiles/cscope.make 2009-05-05 15:08:05.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/makefiles/cscope.make ./hotspot/build/bsd/makefiles/cscope.make +--- ../orig/hotspot/build/bsd/makefiles/cscope.make 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/makefiles/cscope.make 2009-05-14 23:41:33.000000000 -0400 @@ -72,7 +72,7 @@ endif # OS-specific files for other systems are excluded by default. Use CS_OS=yes # to include platform-specific files for other platforms. @@ -490,9 +2497,9 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/cscope.make ./hotspot/build/bsd/ma CS_PRUNE_OS = $(patsubst %,-o -name '*%*',$(filter-out ${OS},${CS_OS})) endif -diff -upr ../orig/hotspot/build/bsd/makefiles/defs.make ./hotspot/build/bsd/makefiles/defs.make ---- ../orig/hotspot/build/bsd/makefiles/defs.make 2009-05-04 18:32:16.000000000 -0400 -+++ ./hotspot/build/bsd/makefiles/defs.make 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/makefiles/defs.make ./hotspot/build/bsd/makefiles/defs.make +--- ../orig/hotspot/build/bsd/makefiles/defs.make 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/makefiles/defs.make 2009-05-14 23:41:34.000000000 -0400 @@ -28,6 +28,14 @@ SLASH_JAVA ?= /java @@ -540,7 +2547,7 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/defs.make ./hotspot/build/bsd/make # i686 ifeq ($(ARCH), i686) ARCH_DATA_MODEL = 32 -@@ -95,19 +128,11 @@ VM_DEBUG=jvmg +@@ -95,19 +128,13 @@ VM_DEBUG=jvmg EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt @@ -564,9 +2571,11 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/defs.make ./hotspot/build/bsd/make + EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjsig.$(LIBRARY_SUFFIX) + EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX) endif -diff -upr ../orig/hotspot/build/bsd/makefiles/gcc.make ./hotspot/build/bsd/makefiles/gcc.make ---- ../orig/hotspot/build/bsd/makefiles/gcc.make 2009-05-04 18:32:16.000000000 -0400 -+++ ./hotspot/build/bsd/makefiles/gcc.make 2009-05-04 17:37:15.000000000 -0400 ++EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.so ++EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar +diff -uNpr ../orig/hotspot/build/bsd/makefiles/gcc.make ./hotspot/build/bsd/makefiles/gcc.make +--- ../orig/hotspot/build/bsd/makefiles/gcc.make 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/makefiles/gcc.make 2009-05-14 23:41:33.000000000 -0400 @@ -22,12 +22,15 @@ # # @@ -673,9 +2682,9 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/gcc.make ./hotspot/build/bsd/makef #------------------------------------------------------------------------ # Debug flags -diff -upr ../orig/hotspot/build/bsd/makefiles/jsig.make ./hotspot/build/bsd/makefiles/jsig.make ---- ../orig/hotspot/build/bsd/makefiles/jsig.make 2009-05-04 18:32:16.000000000 -0400 -+++ ./hotspot/build/bsd/makefiles/jsig.make 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/makefiles/jsig.make ./hotspot/build/bsd/makefiles/jsig.make +--- ../orig/hotspot/build/bsd/makefiles/jsig.make 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/makefiles/jsig.make 2009-05-14 23:41:33.000000000 -0400 @@ -26,7 +26,12 @@ # libjsig[_g].so: signal interposition library @@ -705,9 +2714,9 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/jsig.make ./hotspot/build/bsd/make install_jsig: $(LIBJSIG) @echo "Copying $(LIBJSIG) to $(DEST_JSIG)" -diff -upr ../orig/hotspot/build/bsd/makefiles/launcher.make ./hotspot/build/bsd/makefiles/launcher.make ---- ../orig/hotspot/build/bsd/makefiles/launcher.make 2009-05-04 18:32:16.000000000 -0400 -+++ ./hotspot/build/bsd/makefiles/launcher.make 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/makefiles/launcher.make ./hotspot/build/bsd/makefiles/launcher.make +--- ../orig/hotspot/build/bsd/makefiles/launcher.make 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/makefiles/launcher.make 2009-05-14 23:41:33.000000000 -0400 @@ -44,7 +44,7 @@ ifeq ($(LINK_INTO),AOUT) LIBS_LAUNCHER += $(STATIC_STDCXX) $(LIBS) else @@ -717,9 +2726,9 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/launcher.make ./hotspot/build/bsd/ LIBS_LAUNCHER += -l$(JVM) $(LIBS) endif -diff -upr ../orig/hotspot/build/bsd/makefiles/sa.make ./hotspot/build/bsd/makefiles/sa.make ---- ../orig/hotspot/build/bsd/makefiles/sa.make 2009-05-04 18:32:16.000000000 -0400 -+++ ./hotspot/build/bsd/makefiles/sa.make 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/makefiles/sa.make ./hotspot/build/bsd/makefiles/sa.make +--- ../orig/hotspot/build/bsd/makefiles/sa.make 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/makefiles/sa.make 2009-05-14 23:41:33.000000000 -0400 @@ -42,7 +42,7 @@ SA_CLASSPATH = $(BOOT_JAVA_HOME)/lib/too # gnumake 3.78.1 does not accept the *s that @@ -729,9 +2738,9 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/sa.make ./hotspot/build/bsd/makefi SA_CLASSDIR = $(GENERATED)/saclasses -diff -upr ../orig/hotspot/build/bsd/makefiles/saproc.make ./hotspot/build/bsd/makefiles/saproc.make ---- ../orig/hotspot/build/bsd/makefiles/saproc.make 2009-05-04 18:32:16.000000000 -0400 -+++ ./hotspot/build/bsd/makefiles/saproc.make 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/makefiles/saproc.make ./hotspot/build/bsd/makefiles/saproc.make +--- ../orig/hotspot/build/bsd/makefiles/saproc.make 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/makefiles/saproc.make 2009-05-15 09:53:42.000000000 -0400 @@ -26,7 +26,12 @@ # libsaproc[_g].so: serviceability agent @@ -746,23 +2755,60 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/saproc.make ./hotspot/build/bsd/ma AGENT_DIR = $(GAMMADIR)/agent -@@ -43,11 +48,11 @@ SAMAPFILE = $(SASRCDIR)/mapfile - - DEST_SAPROC = $(JDK_LIBDIR)/$(LIBSAPROC) +@@ -37,6 +42,7 @@ SASRCFILES = $(SASRCDIR)/salibelf.c + $(SASRCDIR)/libproc_impl.c \ + $(SASRCDIR)/ps_proc.c \ + $(SASRCDIR)/ps_core.c \ ++ $(SASRCDIR)/hsearch_r.c \ + $(SASRCDIR)/BsdDebuggerLocal.c --# if $(AGENT_DIR) does not exist, we don't build SA -+# if $(SASRCDIR) does not exist, we don't build SA - # also, we don't build SA on Itanium. + SAMAPFILE = $(SASRCDIR)/mapfile +@@ -53,6 +59,25 @@ checkAndBuildSA: - checkAndBuildSA: -- $(QUIETLY) if [ -d $(AGENT_DIR) -a "$(SRCARCH)" != "ia64" ] ; then \ -+ $(QUIETLY) if [ -d $(SASRCDIR) -a "$(SRCARCH)" != "ia64" ] ; then \ - $(MAKE) -f vm.make $(LIBSAPROC); \ - fi + SA_LFLAGS = $(MAPFLAG:FILENAME=$(SAMAPFILE)) -diff -upr ../orig/hotspot/build/bsd/makefiles/vm.make ./hotspot/build/bsd/makefiles/vm.make ---- ../orig/hotspot/build/bsd/makefiles/vm.make 2009-05-04 18:32:16.000000000 -0400 -+++ ./hotspot/build/bsd/makefiles/vm.make 2009-05-04 17:37:17.000000000 -0400 ++# This is needed to avoid picking up the proc_service.h ++# header in SASRCDIR. We want to use the system provided one. ++ifeq ($(CC_VER_MAJOR), 3) ++INCSASRCDIR=-I$(SASRCDIR) -I- ++else ++INCSASRCDIR=-iquote $(SASRCDIR) ++endif ++ ++LIBUTIL= ++ifeq ($(OS_VENDOR), FreeBSD) ++# 7.0 and 6.x use ptrace ++# 7.1 and up use libutil for kinfo_getvmmap ++PTRACE_OS_VERSIONS = 5.% 6.% 7.0% ++EMPTY_IF_KINFO_GETVMMAP = $(filter $(PTRACE_OS_VERSIONS),$(shell uname -r)) ++ifeq ($(EMPTY_IF_KINFO_GETVMMAP),) ++LIBUTIL=-lutil ++endif ++endif ++ + $(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE) + $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \ + echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \ +@@ -61,13 +86,14 @@ $(LIBSAPROC): $(SASRCFILES) $(SAMAPFILE) + @echo Making SA debugger back-end... + $(QUIETLY) $(CC) -D$(BUILDARCH) -D_GNU_SOURCE \ + $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \ +- -I$(SASRCDIR) \ ++ $(INCSASRCDIR) \ + -I$(GENERATED) \ + -I$(BOOT_JAVA_HOME)/include \ +- -I$(BOOT_JAVA_HOME)/include/$(Platform_os_family) \ ++ -I$(BOOT_JAVA_HOME)/include/$(shell uname -s | tr "[:upper:]" "[:lower:]") \ + $(SASRCFILES) \ + $(SA_LFLAGS) \ + -o $@ \ ++ $(LIBUTIL) \ + -lthread_db + + install_saproc: checkAndBuildSA +diff -uNpr ../orig/hotspot/build/bsd/makefiles/vm.make ./hotspot/build/bsd/makefiles/vm.make +--- ../orig/hotspot/build/bsd/makefiles/vm.make 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/makefiles/vm.make 2009-05-14 23:41:33.000000000 -0400 @@ -93,7 +93,7 @@ CFLAGS += $(CFLAGS/NOEX) # Extra flags from gnumake's invocation or environment CFLAGS += $(EXTRA_CFLAGS) @@ -839,9 +2885,9 @@ diff -upr ../orig/hotspot/build/bsd/makefiles/vm.make ./hotspot/build/bsd/makefi } DEST_JVM = $(JDK_LIBDIR)/$(VM_SUBDIR)/$(LIBJVM) -diff -upr ../orig/hotspot/build/bsd/platform_amd64 ./hotspot/build/bsd/platform_amd64 ---- ../orig/hotspot/build/bsd/platform_amd64 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/build/bsd/platform_amd64 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/platform_amd64 ./hotspot/build/bsd/platform_amd64 +--- ../orig/hotspot/build/bsd/platform_amd64 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/platform_amd64 2009-05-14 23:41:33.000000000 -0400 @@ -12,6 +12,4 @@ lib_arch = amd64 compiler = gcc @@ -850,9 +2896,9 @@ diff -upr ../orig/hotspot/build/bsd/platform_amd64 ./hotspot/build/bsd/platform_ - -sysdefs = -DLINUX -D_GNU_SOURCE -DAMD64 +sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DAMD64 -diff -upr ../orig/hotspot/build/bsd/platform_i486 ./hotspot/build/bsd/platform_i486 ---- ../orig/hotspot/build/bsd/platform_i486 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/build/bsd/platform_i486 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/platform_i486 ./hotspot/build/bsd/platform_i486 +--- ../orig/hotspot/build/bsd/platform_i486 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/platform_i486 2009-05-14 23:41:33.000000000 -0400 @@ -12,6 +12,4 @@ lib_arch = i386 compiler = gcc @@ -861,9 +2907,9 @@ diff -upr ../orig/hotspot/build/bsd/platform_i486 ./hotspot/build/bsd/platform_i - -sysdefs = -DLINUX -D_GNU_SOURCE -DIA32 +sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DIA32 -diff -upr ../orig/hotspot/build/bsd/platform_sparc ./hotspot/build/bsd/platform_sparc ---- ../orig/hotspot/build/bsd/platform_sparc 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/build/bsd/platform_sparc 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/build/bsd/platform_sparc ./hotspot/build/bsd/platform_sparc +--- ../orig/hotspot/build/bsd/platform_sparc 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/build/bsd/platform_sparc 2009-05-14 23:41:33.000000000 -0400 @@ -12,6 +12,6 @@ lib_arch = sparc compiler = gcc @@ -872,9 +2918,40 @@ diff -upr ../orig/hotspot/build/bsd/platform_sparc ./hotspot/build/bsd/platform_ +sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DSPARC sysdefs = -DLINUX -D_GNU_SOURCE -DSPARC -diff -upr ../orig/hotspot/make/Makefile ./hotspot/make/Makefile ---- ../orig/hotspot/make/Makefile 2009-01-27 15:40:59.000000000 -0500 -+++ ./hotspot/make/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/build/sa.files ./hotspot/build/sa.files +--- ../orig/hotspot/build/sa.files 2009-04-24 03:30:52.000000000 -0400 ++++ ./hotspot/build/sa.files 2009-05-14 23:41:34.000000000 -0400 +@@ -40,6 +40,7 @@ $(AGENT_SRC_DIR)/sun/jvm/hotspot/HotSpot + $(AGENT_SRC_DIR)/sun/jvm/hotspot/HotSpotSolarisVtblAccess.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/HotSpotTypeDataBase.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/LinuxVtblAccess.java \ ++$(AGENT_SRC_DIR)/sun/jvm/hotspot/BsdVtblAccess.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/ObjectHistogram.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/RMIHelper.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/StackTrace.java \ +@@ -76,6 +77,9 @@ $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugge + $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/dbx/x86/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/dummy/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/amd64/*.java \ ++$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/bsd/*.java \ ++$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/bsd/amd64/*.java \ ++$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/bsd/x86/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/ia64/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/linux/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/linux/amd64/*.java \ +@@ -110,6 +114,9 @@ $(AGENT_SRC_DIR)/sun/jvm/hotspot/memory/ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/oops/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/amd64/*.java \ ++$(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/bsd/*.java \ ++$(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/bsd_amd64/*.java \ ++$(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/bsd_x86/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/ia64/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/linux/*.java \ + $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/linux_amd64/*.java \ +diff -uNpr ../orig/hotspot/make/Makefile ./hotspot/make/Makefile +--- ../orig/hotspot/make/Makefile 2009-04-24 03:30:52.000000000 -0400 ++++ ./hotspot/make/Makefile 2009-05-14 23:41:33.000000000 -0400 @@ -262,6 +262,19 @@ endif # Shared Library @@ -903,9 +2980,9 @@ diff -upr ../orig/hotspot/make/Makefile ./hotspot/make/Makefile # Jar file (sa-jdi.jar) $(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar -diff -upr ../orig/hotspot/make/defs.make ./hotspot/make/defs.make ---- ../orig/hotspot/make/defs.make 2009-01-27 15:40:59.000000000 -0500 -+++ ./hotspot/make/defs.make 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/make/defs.make ./hotspot/make/defs.make +--- ../orig/hotspot/make/defs.make 2009-04-24 03:30:52.000000000 -0400 ++++ ./hotspot/make/defs.make 2009-05-14 23:41:33.000000000 -0400 @@ -118,13 +118,23 @@ endif # Windows should have OS predefined ifeq ($(OS),) @@ -932,9 +3009,9 @@ diff -upr ../orig/hotspot/make/defs.make ./hotspot/make/defs.make else OSNAME=solaris endif -diff -upr ../orig/hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp ./hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp ---- ../orig/hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp 2009-01-27 15:41:00.000000000 -0500 -+++ ./hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp ./hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp +--- ../orig/hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp 2009-04-24 03:30:53.000000000 -0400 ++++ ./hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -57,7 +57,7 @@ void InterpreterRuntime::SignatureHandle __ cmpl(Address(from(), Interpreter::local_offset_in_bytes(from_offset)), 0); // do not use temp() to avoid AGI Label L; @@ -953,9 +3030,9 @@ diff -upr ../orig/hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp ./hotspot/src/ debug_only(verify_tag(frame::TagReference)); _from -= Interpreter::stackElementSize(); } -diff -upr ../orig/hotspot/src/cpu/x86/vm/jni_x86.h ./hotspot/src/cpu/x86/vm/jni_x86.h ---- ../orig/hotspot/src/cpu/x86/vm/jni_x86.h 2009-01-27 15:41:00.000000000 -0500 -+++ ./hotspot/src/cpu/x86/vm/jni_x86.h 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/cpu/x86/vm/jni_x86.h ./hotspot/src/cpu/x86/vm/jni_x86.h +--- ../orig/hotspot/src/cpu/x86/vm/jni_x86.h 2009-04-24 03:30:53.000000000 -0400 ++++ ./hotspot/src/cpu/x86/vm/jni_x86.h 2009-05-14 23:41:33.000000000 -0400 @@ -29,7 +29,7 @@ #ifndef _JAVASOFT_JNI_MD_H_ #define _JAVASOFT_JNI_MD_H_ @@ -965,9 +3042,9 @@ diff -upr ../orig/hotspot/src/cpu/x86/vm/jni_x86.h ./hotspot/src/cpu/x86/vm/jni_ #define JNIEXPORT #define JNIIMPORT #define JNICALL -diff -upr ../orig/hotspot/src/cpu/x86/vm/runtime_x86_32.cpp ./hotspot/src/cpu/x86/vm/runtime_x86_32.cpp ---- ../orig/hotspot/src/cpu/x86/vm/runtime_x86_32.cpp 2009-01-27 15:41:00.000000000 -0500 -+++ ./hotspot/src/cpu/x86/vm/runtime_x86_32.cpp 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/cpu/x86/vm/runtime_x86_32.cpp ./hotspot/src/cpu/x86/vm/runtime_x86_32.cpp +--- ../orig/hotspot/src/cpu/x86/vm/runtime_x86_32.cpp 2009-04-24 03:30:53.000000000 -0400 ++++ ./hotspot/src/cpu/x86/vm/runtime_x86_32.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -132,11 +132,11 @@ void OptoRuntime::generate_exception_blo // Get the exception pc in case we are deoptimized __ movl(rdx, Address(rcx, JavaThread::exception_pc_offset())); @@ -983,9 +3060,9 @@ diff -upr ../orig/hotspot/src/cpu/x86/vm/runtime_x86_32.cpp ./hotspot/src/cpu/x8 __ popl(rcx); -diff -upr ../orig/hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp ./hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp ---- ../orig/hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp 2009-01-27 15:41:00.000000000 -0500 -+++ ./hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp 2009-05-05 16:01:30.000000000 -0400 +diff -uNpr ../orig/hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp ./hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp +--- ../orig/hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp 2009-04-24 03:30:53.000000000 -0400 ++++ ./hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -472,7 +472,7 @@ class StubGenerator: public StubCodeGene // setup rax & rdx, remove return address & clear pending exception __ popq(rdx); @@ -1031,9 +3108,9 @@ diff -upr ../orig/hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp ./hotspot/src/ __ cmpq(rax, c_rarg3); __ jcc(Assembler::notZero, error); -diff -upr ../orig/hotspot/src/cpu/x86/vm/x86_32.ad ./hotspot/src/cpu/x86/vm/x86_32.ad ---- ../orig/hotspot/src/cpu/x86/vm/x86_32.ad 2009-01-27 15:41:00.000000000 -0500 -+++ ./hotspot/src/cpu/x86/vm/x86_32.ad 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/cpu/x86/vm/x86_32.ad ./hotspot/src/cpu/x86/vm/x86_32.ad +--- ../orig/hotspot/src/cpu/x86/vm/x86_32.ad 2009-04-24 03:30:53.000000000 -0400 ++++ ./hotspot/src/cpu/x86/vm/x86_32.ad 2009-05-14 23:41:33.000000000 -0400 @@ -3364,7 +3364,7 @@ encode %{ masm.movl (Address(boxReg, 0), 3) ; // results in ST-before-CAS penalty masm.get_thread (scrReg) ; @@ -1079,9 +3156,9 @@ diff -upr ../orig/hotspot/src/cpu/x86/vm/x86_32.ad ./hotspot/src/cpu/x86/vm/x86_ if (os::is_MP()) { if (VM_Version::supports_sse2() && 1 == FenceInstruction) { masm.emit_raw (0x0F) ; // MFENCE ... -diff -upr ../orig/hotspot/src/os/bsd/launcher/java_md.c ./hotspot/src/os/bsd/launcher/java_md.c ---- ../orig/hotspot/src/os/bsd/launcher/java_md.c 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/launcher/java_md.c 2009-05-05 17:57:18.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/launcher/java_md.c ./hotspot/src/os/bsd/launcher/java_md.c +--- ../orig/hotspot/src/os/bsd/launcher/java_md.c 2009-05-14 23:40:13.000000000 -0400 ++++ ./hotspot/src/os/bsd/launcher/java_md.c 2009-05-14 23:41:33.000000000 -0400 @@ -45,8 +45,15 @@ #include "version_comp.h" #endif @@ -1192,10 +3269,51 @@ diff -upr ../orig/hotspot/src/os/bsd/launcher/java_md.c ./hotspot/src/os/bsd/lau result = bsd_i586_ServerClassMachine(); #else if (_launcher_debug) { -diff -upr ../orig/hotspot/src/os/bsd/vm/attachListener_bsd.cpp ./hotspot/src/os/bsd/vm/attachListener_bsd.cpp ---- ../orig/hotspot/src/os/bsd/vm/attachListener_bsd.cpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/attachListener_bsd.cpp 2009-05-05 17:58:29.000000000 -0400 -@@ -333,6 +333,15 @@ BsdAttachOperation* BsdAttachListener::d +diff -uNpr ../orig/hotspot/src/os/bsd/vm/attachListener_bsd.cpp ./hotspot/src/os/bsd/vm/attachListener_bsd.cpp +--- ../orig/hotspot/src/os/bsd/vm/attachListener_bsd.cpp 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/attachListener_bsd.cpp 2009-05-14 23:41:34.000000000 -0400 +@@ -182,32 +182,20 @@ int BsdAttachListener::init() { + struct sockaddr_un addr; + addr.sun_family = AF_UNIX; + +- // FIXME: Prior to b39 the tool-side API expected to find the well +- // known file in the working directory. To allow this libjvm.so work with +- // a pre-b39 SDK we create it in the working directory if +- // +StartAttachListener is used is used. All unit tests for this feature +- // currently used this flag. Once b39 SDK has been promoted we can remove +- // this code. +- if (StartAttachListener) { +- sprintf(path, ".java_pid%d", os::current_process_id()); +- strcpy(addr.sun_path, path); +- ::unlink(path); +- res = ::bind(listener, (struct sockaddr*)&addr, sizeof(addr)); +- } +- if (res == -1) { +- sprintf(path, "%s/.java_pid%d", os::get_temp_directory(), os::current_process_id()); +- strcpy(addr.sun_path, path); +- ::unlink(path); +- res = ::bind(listener, (struct sockaddr*)&addr, sizeof(addr)); +- } ++ ++ sprintf(path, "%s/.java_pid%d", os::get_temp_directory(), os::current_process_id()); ++ strcpy(addr.sun_path, path); ++ ::unlink(path); ++ res = ::bind(listener, (struct sockaddr*)&addr, sizeof(addr)); + if (res == -1) { + RESTARTABLE(::close(listener), res); + return -1; + } + set_path(path); + +- // put in listen mode and set permission +- if ((::listen(listener, 5) == -1) || (::chmod(path, S_IREAD|S_IWRITE) == -1)) { ++ // put in listen mode and set permission and ownership ++ if ((::listen(listener, 5) == -1) || (::chmod(path, S_IREAD|S_IWRITE) == -1) || ++ (::chown(path, geteuid(), getegid()) == -1)) { + RESTARTABLE(::close(listener), res); + ::unlink(path); + set_path(NULL); +@@ -333,6 +321,15 @@ BsdAttachOperation* BsdAttachListener::d // get the credentials of the peer and check the effective uid/guid // - check with jeff on this. @@ -1211,7 +3329,7 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/attachListener_bsd.cpp ./hotspot/src/os/ struct ucred cred_info; socklen_t optlen = sizeof(cred_info); if (::getsockopt(s, SOL_SOCKET, SO_PEERCRED, (void*)&cred_info, &optlen) == -1) { -@@ -340,10 +349,13 @@ BsdAttachOperation* BsdAttachListener::d +@@ -340,10 +337,13 @@ BsdAttachOperation* BsdAttachListener::d RESTARTABLE(::close(s), res); continue; } @@ -1226,25 +3344,30 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/attachListener_bsd.cpp ./hotspot/src/os/ int res; RESTARTABLE(::close(s), res); continue; -@@ -466,11 +478,11 @@ bool AttachListener::is_init_trigger() { - char fn[32]; - sprintf(fn, ".attach_pid%d", os::current_process_id()); +@@ -463,15 +463,12 @@ bool AttachListener::is_init_trigger() { + if (init_at_startup() || is_initialized()) { + return false; // initialized at startup or already initialized + } +- char fn[32]; +- sprintf(fn, ".attach_pid%d", os::current_process_id()); ++ char path[PATH_MAX + 1]; int ret; - struct stat64 st; - RESTARTABLE(::stat64(fn, &st), ret); -+ struct stat st; -+ RESTARTABLE(::stat(fn, &st), ret); - if (ret == -1) { - sprintf(fn, "/tmp/.attach_pid%d", os::current_process_id()); +- if (ret == -1) { +- sprintf(fn, "/tmp/.attach_pid%d", os::current_process_id()); - RESTARTABLE(::stat64(fn, &st), ret); -+ RESTARTABLE(::stat(fn, &st), ret); - } +- } ++ struct stat st; ++ ++ sprintf(path, "%s/.attach_pid%d", os::get_temp_directory(), os::current_process_id()); ++ RESTARTABLE(::stat(path, &st), ret); if (ret == 0) { // simple check to avoid starting the attach mechanism when -Only in ./hotspot/src/os/bsd/vm: dtraceJSDT_bsd.cpp -diff -upr ../orig/hotspot/src/os/bsd/vm/hpi_bsd.cpp ./hotspot/src/os/bsd/vm/hpi_bsd.cpp ---- ../orig/hotspot/src/os/bsd/vm/hpi_bsd.cpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/hpi_bsd.cpp 2009-05-05 18:00:58.000000000 -0400 + // a bogus user creates the file +diff -uNpr ../orig/hotspot/src/os/bsd/vm/hpi_bsd.cpp ./hotspot/src/os/bsd/vm/hpi_bsd.cpp +--- ../orig/hotspot/src/os/bsd/vm/hpi_bsd.cpp 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/hpi_bsd.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -31,6 +31,14 @@ # include <sys/param.h> # include <dlfcn.h> @@ -1274,9 +3397,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/hpi_bsd.cpp ./hotspot/src/os/bsd/vm/hpi_ #endif *(strrchr(buf, '/')) = '\0'; /* get rid of /libjvm.so */ -diff -upr ../orig/hotspot/src/os/bsd/vm/hpi_bsd.hpp ./hotspot/src/os/bsd/vm/hpi_bsd.hpp ---- ../orig/hotspot/src/os/bsd/vm/hpi_bsd.hpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/hpi_bsd.hpp 2009-05-05 18:12:24.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/vm/hpi_bsd.hpp ./hotspot/src/os/bsd/vm/hpi_bsd.hpp +--- ../orig/hotspot/src/os/bsd/vm/hpi_bsd.hpp 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/hpi_bsd.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -39,26 +39,22 @@ // HPI_FileInterface @@ -1413,9 +3536,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/hpi_bsd.hpp ./hotspot/src/os/bsd/vm/hpi_ } /* -diff -upr ../orig/hotspot/src/os/bsd/vm/jsig.c ./hotspot/src/os/bsd/vm/jsig.c ---- ../orig/hotspot/src/os/bsd/vm/jsig.c 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/jsig.c 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/vm/jsig.c ./hotspot/src/os/bsd/vm/jsig.c +--- ../orig/hotspot/src/os/bsd/vm/jsig.c 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/jsig.c 2009-05-14 23:41:33.000000000 -0400 @@ -146,7 +146,8 @@ sa_handler_t signal(int sig, sa_handler_ } @@ -1426,9 +3549,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/jsig.c ./hotspot/src/os/bsd/vm/jsig.c } static int call_os_sigaction(int sig, const struct sigaction *act, -diff -upr ../orig/hotspot/src/os/bsd/vm/jvm_bsd.cpp ./hotspot/src/os/bsd/vm/jvm_bsd.cpp ---- ../orig/hotspot/src/os/bsd/vm/jvm_bsd.cpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/jvm_bsd.cpp 2009-05-05 18:16:36.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/vm/jvm_bsd.cpp ./hotspot/src/os/bsd/vm/jvm_bsd.cpp +--- ../orig/hotspot/src/os/bsd/vm/jvm_bsd.cpp 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/jvm_bsd.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -141,44 +141,37 @@ struct siglabel { struct siglabel siglabels[] = { @@ -1485,9 +3608,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/jvm_bsd.cpp ./hotspot/src/os/bsd/vm/jvm_ }; JVM_ENTRY_NO_ENV(jint, JVM_FindSignal(const char *name)) -diff -upr ../orig/hotspot/src/os/bsd/vm/jvm_bsd.h ./hotspot/src/os/bsd/vm/jvm_bsd.h ---- ../orig/hotspot/src/os/bsd/vm/jvm_bsd.h 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/jvm_bsd.h 2009-05-05 18:16:44.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/vm/jvm_bsd.h ./hotspot/src/os/bsd/vm/jvm_bsd.h +--- ../orig/hotspot/src/os/bsd/vm/jvm_bsd.h 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/jvm_bsd.h 2009-05-14 23:41:33.000000000 -0400 @@ -54,7 +54,11 @@ #define AGENT_ONATTACH_SYMBOLS {"Agent_OnAttach"} @@ -1521,9 +3644,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/jvm_bsd.h ./hotspot/src/os/bsd/vm/jvm_bs #endif /* JVM_MD_H */ // Reconciliation History -diff -upr ../orig/hotspot/src/os/bsd/vm/osThread_bsd.cpp ./hotspot/src/os/bsd/vm/osThread_bsd.cpp ---- ../orig/hotspot/src/os/bsd/vm/osThread_bsd.cpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/osThread_bsd.cpp 2009-05-05 18:19:09.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/vm/osThread_bsd.cpp ./hotspot/src/os/bsd/vm/osThread_bsd.cpp +--- ../orig/hotspot/src/os/bsd/vm/osThread_bsd.cpp 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/osThread_bsd.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -31,8 +31,8 @@ void OSThread::pd_initialize() { @@ -1535,9 +3658,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/osThread_bsd.cpp ./hotspot/src/os/bsd/vm _siginfo = NULL; _ucontext = NULL; _expanding_stack = 0; -diff -upr ../orig/hotspot/src/os/bsd/vm/osThread_bsd.hpp ./hotspot/src/os/bsd/vm/osThread_bsd.hpp ---- ../orig/hotspot/src/os/bsd/vm/osThread_bsd.hpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/osThread_bsd.hpp 2009-05-05 20:37:04.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/vm/osThread_bsd.hpp ./hotspot/src/os/bsd/vm/osThread_bsd.hpp +--- ../orig/hotspot/src/os/bsd/vm/osThread_bsd.hpp 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/osThread_bsd.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -39,6 +39,12 @@ private: @@ -1617,9 +3740,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/osThread_bsd.hpp ./hotspot/src/os/bsd/vm // *************************************************************** // Platform dependent initialization and cleanup // *************************************************************** -diff -upr ../orig/hotspot/src/os/bsd/vm/os_bsd.cpp ./hotspot/src/os/bsd/vm/os_bsd.cpp ---- ../orig/hotspot/src/os/bsd/vm/os_bsd.cpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/os_bsd.cpp 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/vm/os_bsd.cpp ./hotspot/src/os/bsd/vm/os_bsd.cpp +--- ../orig/hotspot/src/os/bsd/vm/os_bsd.cpp 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/os_bsd.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -50,12 +50,33 @@ # include <semaphore.h> # include <fcntl.h> @@ -2862,9 +4985,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/os_bsd.cpp ./hotspot/src/os/bsd/vm/os_bs // execve failed _exit(-1); -diff -upr ../orig/hotspot/src/os/bsd/vm/os_bsd.hpp ./hotspot/src/os/bsd/vm/os_bsd.hpp ---- ../orig/hotspot/src/os/bsd/vm/os_bsd.hpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/os_bsd.hpp 2009-05-06 10:55:43.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/vm/os_bsd.hpp ./hotspot/src/os/bsd/vm/os_bsd.hpp +--- ../orig/hotspot/src/os/bsd/vm/os_bsd.hpp 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/os_bsd.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -30,6 +30,12 @@ /* pthread_getattr_np comes with BsdThreads-0.9-7 on RedHat 7.1 */ typedef int (*pthread_getattr_func_type) (pthread_t, pthread_attr_t *); @@ -3020,9 +5143,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/os_bsd.hpp ./hotspot/src/os/bsd/vm/os_bs // Stack repair handling -diff -upr ../orig/hotspot/src/os/bsd/vm/os_bsd.inline.hpp ./hotspot/src/os/bsd/vm/os_bsd.inline.hpp ---- ../orig/hotspot/src/os/bsd/vm/os_bsd.inline.hpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os/bsd/vm/os_bsd.inline.hpp 2009-05-06 10:57:31.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os/bsd/vm/os_bsd.inline.hpp ./hotspot/src/os/bsd/vm/os_bsd.inline.hpp +--- ../orig/hotspot/src/os/bsd/vm/os_bsd.inline.hpp 2009-05-14 23:40:14.000000000 -0400 ++++ ./hotspot/src/os/bsd/vm/os_bsd.inline.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -64,7 +64,15 @@ inline bool os::uses_stack_guard_pages() inline bool os::allocate_stack_guard_pages() { @@ -3147,10 +5270,9 @@ diff -upr ../orig/hotspot/src/os/bsd/vm/os_bsd.inline.hpp ./hotspot/src/os/bsd/v // macros for restartable system calls #define RESTARTABLE(_cmd, _result) do { \ -Only in ./hotspot/src/os_cpu/bsd_x86/vm: assembler_bsd_x86.cpp -diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/assembler_bsd_x86_64.cpp ./hotspot/src/os_cpu/bsd_x86/vm/assembler_bsd_x86_64.cpp ---- ../orig/hotspot/src/os_cpu/bsd_x86/vm/assembler_bsd_x86_64.cpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os_cpu/bsd_x86/vm/assembler_bsd_x86_64.cpp 2009-05-06 11:53:03.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os_cpu/bsd_x86/vm/assembler_bsd_x86_64.cpp ./hotspot/src/os_cpu/bsd_x86/vm/assembler_bsd_x86_64.cpp +--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/assembler_bsd_x86_64.cpp 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/src/os_cpu/bsd_x86/vm/assembler_bsd_x86_64.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -69,8 +69,9 @@ void MacroAssembler::get_thread(Register } } @@ -3164,9 +5286,9 @@ diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/assembler_bsd_x86_64.cpp ./hotsp + bool offset_in_first_page = 0 <= offset && offset < os::vm_page_size(); + return !offset_in_first_page; } -diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s ---- ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s +--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s 2009-05-14 23:41:33.000000000 -0400 @@ -21,49 +21,82 @@ # have any questions. # @@ -3371,9 +5493,9 @@ diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s ./hotspot/src/os_cp # 8(%esp) : return PC pushl %ebx # 4(%esp) : old %ebx pushl %edi # 0(%esp) : old %edi -diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s ---- ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s 2009-05-06 11:56:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s +--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s 2009-05-14 23:41:33.000000000 -0400 @@ -23,48 +23,70 @@ .ident "@(#)bsd_x86_64.s 1.7 07/05/05 17:04:47 JVM" @@ -3522,9 +5644,9 @@ diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s ./hotspot/src/os_cp cmpq %rdi,%rsi leaq -8(%rdi,%rdx,8),%rax # from + count*8 - 8 jbe acl_CopyRight -diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp ./hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp ---- ../orig/hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp 2009-05-06 12:15:02.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp ./hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp +--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -25,7 +25,29 @@ * */ @@ -3555,9 +5677,9 @@ diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp ./hotsp // Efficient swapping of data bytes from Java byte // ordering to native byte ordering and vice versa. -diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ./hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ---- ../orig/hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ./hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp +--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -47,23 +47,158 @@ # include <sys/wait.h> # include <pwd.h> @@ -4051,9 +6173,9 @@ diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp ./hotspot/src/os_ #endif // AMD64 st->cr(); st->cr(); -diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp ./hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp ---- ../orig/hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp 2009-05-06 12:03:40.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp ./hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp +--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -30,8 +30,10 @@ #ifndef AMD64 // map stack pointer to thread pointer - see notes in threadLS_bsd_x86.cpp @@ -4065,9 +6187,9 @@ diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp ./hotspot/s static Thread* _sp_map[1UL << (SP_BITLENGTH - PAGE_SHIFT)]; #endif // !AMD64 -diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp ./hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp ---- ../orig/hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp 2009-05-04 18:32:15.000000000 -0400 -+++ ./hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp 2009-05-06 12:04:27.000000000 -0400 +diff -uNpr ../orig/hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp ./hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp +--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp 2009-05-14 23:40:15.000000000 -0400 ++++ ./hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -34,7 +34,7 @@ /******************************/ \ /* Threads (NOTE: incomplete) */ \ @@ -4077,9 +6199,9 @@ diff -upr ../orig/hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp ./hotspot/ nonstatic_field(OSThread, _pthread_id, pthread_t) \ /* This must be the last entry, and must be present */ \ last_entry() -diff -upr ../orig/hotspot/src/share/vm/adlc/adlc.hpp ./hotspot/src/share/vm/adlc/adlc.hpp ---- ../orig/hotspot/src/share/vm/adlc/adlc.hpp 2009-01-27 15:41:01.000000000 -0500 -+++ ./hotspot/src/share/vm/adlc/adlc.hpp 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/adlc/adlc.hpp ./hotspot/src/share/vm/adlc/adlc.hpp +--- ../orig/hotspot/src/share/vm/adlc/adlc.hpp 2009-04-24 03:30:54.000000000 -0400 ++++ ./hotspot/src/share/vm/adlc/adlc.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -76,9 +76,9 @@ typedef unsigned int uintptr_t; #endif #endif // _WIN32 @@ -4092,9 +6214,21 @@ diff -upr ../orig/hotspot/src/share/vm/adlc/adlc.hpp ./hotspot/src/share/vm/adlc // Macros #define uint32 unsigned int -diff -upr ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep ./hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep ---- ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep 2009-01-27 15:41:01.000000000 -0500 -+++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/ci/ciMethodBlocks.cpp ./hotspot/src/share/vm/ci/ciMethodBlocks.cpp +--- ../orig/hotspot/src/share/vm/ci/ciMethodBlocks.cpp 2009-04-24 03:30:54.000000000 -0400 ++++ ./hotspot/src/share/vm/ci/ciMethodBlocks.cpp 2009-05-14 23:41:34.000000000 -0400 +@@ -321,7 +321,7 @@ void ciBlock::set_exception_range(int st + } + + #ifndef PRODUCT +-static char *flagnames[] = { ++static const char *flagnames[] = { + "Processed", + "Handler", + "MayThrow", +diff -uNpr ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep ./hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep +--- ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep 2009-04-24 03:30:55.000000000 -0400 ++++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep 2009-05-14 23:41:33.000000000 -0400 @@ -28,6 +28,7 @@ binaryTreeDictionary.cpp binaryTreeDictionary.cpp binaryTreeDictionary.hpp binaryTreeDictionary.cpp globals.hpp @@ -4103,9 +6237,9 @@ diff -upr ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrent binaryTreeDictionary.hpp freeBlockDictionary.hpp binaryTreeDictionary.hpp freeList.hpp -diff -upr ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew ---- ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew 2009-01-27 15:41:01.000000000 -0500 -+++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew +--- ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew 2009-04-24 03:30:55.000000000 -0400 ++++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew 2009-05-14 23:41:33.000000000 -0400 @@ -30,6 +30,8 @@ asParNewGeneration.cpp cmsAdaptiveSize asParNewGeneration.cpp cmsGCAdaptivePolicyCounters.hpp asParNewGeneration.cpp defNewGeneration.inline.hpp @@ -4124,9 +6258,9 @@ diff -upr ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew ./h parCardTableModRefBS.cpp universe.hpp parCardTableModRefBS.cpp virtualspace.hpp -diff -upr ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge ---- ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge 2009-01-27 15:41:01.000000000 -0500 -+++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge +--- ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge 2009-04-24 03:30:55.000000000 -0400 ++++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge 2009-05-14 23:41:33.000000000 -0400 @@ -302,6 +302,8 @@ psPermGen.cpp psPermGen.cpp psMarkSweepDecorator.hpp psPermGen.cpp psParallelCompact.hpp @@ -4136,9 +6270,9 @@ diff -upr ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelSc psPermGen.hpp psOldGen.hpp -diff -upr ../orig/hotspot/src/share/vm/includeDB_compiler2 ./hotspot/src/share/vm/includeDB_compiler2 ---- ../orig/hotspot/src/share/vm/includeDB_compiler2 2009-01-27 15:41:02.000000000 -0500 -+++ ./hotspot/src/share/vm/includeDB_compiler2 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/includeDB_compiler2 ./hotspot/src/share/vm/includeDB_compiler2 +--- ../orig/hotspot/src/share/vm/includeDB_compiler2 2009-04-24 03:30:55.000000000 -0400 ++++ ./hotspot/src/share/vm/includeDB_compiler2 2009-05-14 23:41:33.000000000 -0400 @@ -140,6 +140,7 @@ c2_globals_<os_family>.hpp c2_globals_<os_family>.hpp macros.hpp @@ -4155,9 +6289,9 @@ diff -upr ../orig/hotspot/src/share/vm/includeDB_compiler2 ./hotspot/src/share/v phase.cpp phase.hpp phase.hpp port.hpp -diff -upr ../orig/hotspot/src/share/vm/includeDB_core ./hotspot/src/share/vm/includeDB_core ---- ../orig/hotspot/src/share/vm/includeDB_core 2009-01-27 15:41:02.000000000 -0500 -+++ ./hotspot/src/share/vm/includeDB_core 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/includeDB_core ./hotspot/src/share/vm/includeDB_core +--- ../orig/hotspot/src/share/vm/includeDB_core 2009-04-24 03:30:55.000000000 -0400 ++++ ./hotspot/src/share/vm/includeDB_core 2009-05-14 23:41:33.000000000 -0400 @@ -476,7 +476,7 @@ cardTableModRefBS.cpp cardTableModRefBS.cpp java.hpp cardTableModRefBS.cpp mutexLocker.hpp @@ -4176,9 +6310,9 @@ diff -upr ../orig/hotspot/src/share/vm/includeDB_core ./hotspot/src/share/vm/inc instanceKlass.hpp constMethodOop.hpp instanceKlass.hpp constantPoolOop.hpp instanceKlass.hpp handles.hpp -diff -upr ../orig/hotspot/src/share/vm/includeDB_features ./hotspot/src/share/vm/includeDB_features ---- ../orig/hotspot/src/share/vm/includeDB_features 2009-01-27 15:41:02.000000000 -0500 -+++ ./hotspot/src/share/vm/includeDB_features 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/includeDB_features ./hotspot/src/share/vm/includeDB_features +--- ../orig/hotspot/src/share/vm/includeDB_features 2009-04-24 03:30:55.000000000 -0400 ++++ ./hotspot/src/share/vm/includeDB_features 2009-05-14 23:41:33.000000000 -0400 @@ -58,6 +58,8 @@ dump.cpp dump_<arch_model>.cpp assembler_<arch_model>.inline.hpp @@ -4188,9 +6322,9 @@ diff -upr ../orig/hotspot/src/share/vm/includeDB_features ./hotspot/src/share/vm forte.cpp collectedHeap.inline.hpp forte.cpp debugInfoRec.hpp -diff -upr ../orig/hotspot/src/share/vm/interpreter/bytecodeTracer.cpp ./hotspot/src/share/vm/interpreter/bytecodeTracer.cpp ---- ../orig/hotspot/src/share/vm/interpreter/bytecodeTracer.cpp 2009-01-27 15:41:02.000000000 -0500 -+++ ./hotspot/src/share/vm/interpreter/bytecodeTracer.cpp 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/interpreter/bytecodeTracer.cpp ./hotspot/src/share/vm/interpreter/bytecodeTracer.cpp +--- ../orig/hotspot/src/share/vm/interpreter/bytecodeTracer.cpp 2009-04-24 03:30:55.000000000 -0400 ++++ ./hotspot/src/share/vm/interpreter/bytecodeTracer.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -77,7 +77,7 @@ class BytecodePrinter: public BytecodeCl // the incoming method. We could lose a line of trace output. // This is acceptable in a debug-only feature. @@ -4209,9 +6343,37 @@ diff -upr ../orig/hotspot/src/share/vm/interpreter/bytecodeTracer.cpp ./hotspot/ if (Verbose) { st->print("%8d %4d " INTPTR_FORMAT " " INTPTR_FORMAT " %s", BytecodeCounter::counter_value(), bci, tos, tos2, Bytecodes::name(code)); -diff -upr ../orig/hotspot/src/share/vm/prims/forte.cpp ./hotspot/src/share/vm/prims/forte.cpp ---- ../orig/hotspot/src/share/vm/prims/forte.cpp 2009-01-27 15:41:03.000000000 -0500 -+++ ./hotspot/src/share/vm/prims/forte.cpp 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/opto/escape.cpp ./hotspot/src/share/vm/opto/escape.cpp +--- ../orig/hotspot/src/share/vm/opto/escape.cpp 2009-04-24 03:30:56.000000000 -0400 ++++ ./hotspot/src/share/vm/opto/escape.cpp 2009-05-14 23:41:34.000000000 -0400 +@@ -54,21 +54,21 @@ void PointsToNode::remove_edge(uint targ + } + + #ifndef PRODUCT +-static char *node_type_names[] = { ++static const char *node_type_names[] = { + "UnknownType", + "JavaObject", + "LocalVar", + "Field" + }; + +-static char *esc_names[] = { ++static const char *esc_names[] = { + "UnknownEscape", + "NoEscape ", + "ArgEscape ", + "GlobalEscape " + }; + +-static char *edge_type_suffix[] = { ++static const char *edge_type_suffix[] = { + "?", // UnknownEdge + "P", // PointsToEdge + "D", // DeferredEdge +diff -uNpr ../orig/hotspot/src/share/vm/prims/forte.cpp ./hotspot/src/share/vm/prims/forte.cpp +--- ../orig/hotspot/src/share/vm/prims/forte.cpp 2009-04-24 03:30:56.000000000 -0400 ++++ ./hotspot/src/share/vm/prims/forte.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -872,6 +872,11 @@ void AsyncGetCallTrace(ASGCT_CallTrace * // Method to let libcollector know about a dynamically loaded function. // Because it is weakly bound, the calls become NOP's when the library @@ -4232,9 +6394,9 @@ diff -upr ../orig/hotspot/src/share/vm/prims/forte.cpp ./hotspot/src/share/vm/pr #endif // !_WINDOWS } // end extern "C" -diff -upr ../orig/hotspot/src/share/vm/runtime/globals.hpp ./hotspot/src/share/vm/runtime/globals.hpp ---- ../orig/hotspot/src/share/vm/runtime/globals.hpp 2009-01-27 15:41:03.000000000 -0500 -+++ ./hotspot/src/share/vm/runtime/globals.hpp 2009-05-06 12:07:35.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/runtime/globals.hpp ./hotspot/src/share/vm/runtime/globals.hpp +--- ../orig/hotspot/src/share/vm/runtime/globals.hpp 2009-04-24 03:30:56.000000000 -0400 ++++ ./hotspot/src/share/vm/runtime/globals.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -294,7 +294,7 @@ class CommandLineFlags { /* UseMembar is theoretically a temp flag used for memory barrier \ * removal testing. It was supposed to be removed before FCS but has \ @@ -4244,9 +6406,9 @@ diff -upr ../orig/hotspot/src/share/vm/runtime/globals.hpp ./hotspot/src/share/v "(Unstable) Issues membars on thread state transitions") \ \ product(bool, PrintCommandLineFlags, false, \ -diff -upr ../orig/hotspot/src/share/vm/runtime/os.cpp ./hotspot/src/share/vm/runtime/os.cpp ---- ../orig/hotspot/src/share/vm/runtime/os.cpp 2009-01-27 15:41:03.000000000 -0500 -+++ ./hotspot/src/share/vm/runtime/os.cpp 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/runtime/os.cpp ./hotspot/src/share/vm/runtime/os.cpp +--- ../orig/hotspot/src/share/vm/runtime/os.cpp 2009-04-24 03:30:57.000000000 -0400 ++++ ./hotspot/src/share/vm/runtime/os.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -155,7 +155,11 @@ char* os::iso8601_time(char* buffer, siz } // Save the results of localtime @@ -4259,9 +6421,9 @@ diff -upr ../orig/hotspot/src/share/vm/runtime/os.cpp ./hotspot/src/share/vm/run // If daylight savings time is in effect, // we are 1 hour East of our time zone -diff -upr ../orig/hotspot/src/share/vm/runtime/vm_version.cpp ./hotspot/src/share/vm/runtime/vm_version.cpp ---- ../orig/hotspot/src/share/vm/runtime/vm_version.cpp 2009-01-27 15:41:03.000000000 -0500 -+++ ./hotspot/src/share/vm/runtime/vm_version.cpp 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/runtime/vm_version.cpp ./hotspot/src/share/vm/runtime/vm_version.cpp +--- ../orig/hotspot/src/share/vm/runtime/vm_version.cpp 2009-04-24 03:30:57.000000000 -0400 ++++ ./hotspot/src/share/vm/runtime/vm_version.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -141,7 +141,8 @@ const char* Abstract_VM_Version::vm_rele #define OS LINUX_ONLY("linux") \ @@ -4272,9 +6434,9 @@ diff -upr ../orig/hotspot/src/share/vm/runtime/vm_version.cpp ./hotspot/src/shar #define CPU IA32_ONLY("x86") \ IA64_ONLY("ia64") \ -diff -upr ../orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp ./hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp ---- ../orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2009-01-27 15:41:03.000000000 -0500 -+++ ./hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp ./hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp +--- ../orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2009-04-24 03:30:57.000000000 -0400 ++++ ./hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -74,12 +74,25 @@ # include <sys/procfs.h> # endif @@ -4347,9 +6509,9 @@ diff -upr ../orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp ./hot inline int g_isnan(float f) { return isnanf(f); } inline int g_isnan(double f) { return isnan(f); } #else -diff -upr ../orig/hotspot/src/share/vm/utilities/macros.hpp ./hotspot/src/share/vm/utilities/macros.hpp ---- ../orig/hotspot/src/share/vm/utilities/macros.hpp 2009-01-27 15:41:03.000000000 -0500 -+++ ./hotspot/src/share/vm/utilities/macros.hpp 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/utilities/macros.hpp ./hotspot/src/share/vm/utilities/macros.hpp +--- ../orig/hotspot/src/share/vm/utilities/macros.hpp 2009-04-24 03:30:57.000000000 -0400 ++++ ./hotspot/src/share/vm/utilities/macros.hpp 2009-05-14 23:41:33.000000000 -0400 @@ -147,6 +147,16 @@ #define NOT_WINDOWS(code) code #endif @@ -4367,9 +6529,9 @@ diff -upr ../orig/hotspot/src/share/vm/utilities/macros.hpp ./hotspot/src/share/ #ifdef IA32 #define IA32_ONLY(code) code #define NOT_IA32(code) -diff -upr ../orig/hotspot/src/share/vm/utilities/ostream.cpp ./hotspot/src/share/vm/utilities/ostream.cpp ---- ../orig/hotspot/src/share/vm/utilities/ostream.cpp 2009-01-27 15:41:03.000000000 -0500 -+++ ./hotspot/src/share/vm/utilities/ostream.cpp 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/hotspot/src/share/vm/utilities/ostream.cpp ./hotspot/src/share/vm/utilities/ostream.cpp +--- ../orig/hotspot/src/share/vm/utilities/ostream.cpp 2009-04-24 03:30:57.000000000 -0400 ++++ ./hotspot/src/share/vm/utilities/ostream.cpp 2009-05-14 23:41:34.000000000 -0400 @@ -780,7 +780,7 @@ bufferedStream::~bufferedStream() { #ifndef PRODUCT @@ -4379,9 +6541,18 @@ diff -upr ../orig/hotspot/src/share/vm/utilities/ostream.cpp ./hotspot/src/share #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> -diff -upr ../orig/hotspot/src/share/vm/utilities/vmError.cpp ./hotspot/src/share/vm/utilities/vmError.cpp ---- ../orig/hotspot/src/share/vm/utilities/vmError.cpp 2009-01-27 15:41:04.000000000 -0500 -+++ ./hotspot/src/share/vm/utilities/vmError.cpp 2009-05-04 17:37:17.000000000 -0400 +@@ -832,7 +832,7 @@ bool networkStream::connect(const char * + server.sin_port = htons(port); + + server.sin_addr.s_addr = inet_addr(ip); +- if (server.sin_addr.s_addr == (unsigned long)-1) { ++ if (server.sin_addr.s_addr == (uint32_t)-1) { + #ifdef _WINDOWS + struct hostent* host = hpi::get_host_by_name((char*)ip); + #else +diff -uNpr ../orig/hotspot/src/share/vm/utilities/vmError.cpp ./hotspot/src/share/vm/utilities/vmError.cpp +--- ../orig/hotspot/src/share/vm/utilities/vmError.cpp 2009-04-24 03:30:57.000000000 -0400 ++++ ./hotspot/src/share/vm/utilities/vmError.cpp 2009-05-14 23:41:33.000000000 -0400 @@ -34,13 +34,18 @@ const char *env_list[] = { "JAVA_HOME", "JRE_HOME", "JAVA_TOOL_OPTIONS", "_JAVA_OPTIONS", "CLASSPATH", "JAVA_COMPILER", "PATH", "USERNAME", @@ -4423,9 +6594,9 @@ diff -upr ../orig/hotspot/src/share/vm/utilities/vmError.cpp ./hotspot/src/share out.print_raw ("/bin/sh -c "); #elif defined(SOLARIS) out.print_raw ("/usr/bin/sh -c "); -diff -upr ../orig/jdk/make/com/sun/java/pack/Makefile ./jdk/make/com/sun/java/pack/Makefile ---- ../orig/jdk/make/com/sun/java/pack/Makefile 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/com/sun/java/pack/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/com/sun/java/pack/Makefile ./jdk/make/com/sun/java/pack/Makefile +--- ../orig/jdk/make/com/sun/java/pack/Makefile 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/com/sun/java/pack/Makefile 2009-05-14 23:41:33.000000000 -0400 @@ -61,6 +61,7 @@ vpath %.cpp $(SHARE_SRC)/native/$(PKGDIR @@ -4457,9 +6628,9 @@ diff -upr ../orig/jdk/make/com/sun/java/pack/Makefile ./jdk/make/com/sun/java/pa OTHER_LDLIBS += $(LIBCXX) # setup the list of libraries to link in... ifeq ($(PLATFORM), linux) -diff -upr ../orig/jdk/make/com/sun/security/auth/module/Makefile ./jdk/make/com/sun/security/auth/module/Makefile ---- ../orig/jdk/make/com/sun/security/auth/module/Makefile 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/com/sun/security/auth/module/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/com/sun/security/auth/module/Makefile ./jdk/make/com/sun/security/auth/module/Makefile +--- ../orig/jdk/make/com/sun/security/auth/module/Makefile 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/com/sun/security/auth/module/Makefile 2009-05-14 23:41:33.000000000 -0400 @@ -70,7 +70,7 @@ ifeq ($(PLATFORM), solaris) include FILES_c_solaris.gmk endif # solaris @@ -4469,9 +6640,22 @@ diff -upr ../orig/jdk/make/com/sun/security/auth/module/Makefile ./jdk/make/com/ LIBRARY = jaas_unix include FILES_export_unix.gmk include FILES_c_unix.gmk -diff -upr ../orig/jdk/make/com/sun/tools/attach/FILES_c.gmk ./jdk/make/com/sun/tools/attach/FILES_c.gmk ---- ../orig/jdk/make/com/sun/tools/attach/FILES_c.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/com/sun/tools/attach/FILES_c.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/com/sun/tools/attach/Exportedfiles.gmk ./jdk/make/com/sun/tools/attach/Exportedfiles.gmk +--- ../orig/jdk/make/com/sun/tools/attach/Exportedfiles.gmk 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/com/sun/tools/attach/Exportedfiles.gmk 2009-05-14 23:41:34.000000000 -0400 +@@ -43,5 +43,7 @@ FILES_export = \ + sun/tools/attach/LinuxVirtualMachine.java + endif + +- +- ++ifeq ($(PLATFORM), bsd) ++FILES_export = \ ++ sun/tools/attach/BsdVirtualMachine.java ++endif +diff -uNpr ../orig/jdk/make/com/sun/tools/attach/FILES_c.gmk ./jdk/make/com/sun/tools/attach/FILES_c.gmk +--- ../orig/jdk/make/com/sun/tools/attach/FILES_c.gmk 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/com/sun/tools/attach/FILES_c.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -39,4 +39,7 @@ FILES_c = \ LinuxVirtualMachine.c endif @@ -4481,24 +6665,56 @@ diff -upr ../orig/jdk/make/com/sun/tools/attach/FILES_c.gmk ./jdk/make/com/sun/t +FILES_c = \ + BsdVirtualMachine.c +endif -diff -upr ../orig/jdk/make/com/sun/tools/attach/FILES_java.gmk ./jdk/make/com/sun/tools/attach/FILES_java.gmk ---- ../orig/jdk/make/com/sun/tools/attach/FILES_java.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/com/sun/tools/attach/FILES_java.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/com/sun/tools/attach/FILES_java.gmk ./jdk/make/com/sun/tools/attach/FILES_java.gmk +--- ../orig/jdk/make/com/sun/tools/attach/FILES_java.gmk 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/com/sun/tools/attach/FILES_java.gmk 2009-05-14 23:41:34.000000000 -0400 @@ -43,6 +43,11 @@ FILES_java += \ sun/tools/attach/LinuxAttachProvider.java endif +ifeq ($(PLATFORM), bsd) +FILES_java += \ -+ $(TARGDIR)/sun/tools/attach/BsdAttachProvider.java ++ sun/tools/attach/BsdAttachProvider.java +endif + # # Files that need to be copied # -diff -upr ../orig/jdk/make/common/Defs-bsd.gmk ./jdk/make/common/Defs-bsd.gmk ---- ../orig/jdk/make/common/Defs-bsd.gmk 2009-05-04 18:32:16.000000000 -0400 -+++ ./jdk/make/common/Defs-bsd.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/com/sun/tools/attach/Makefile ./jdk/make/com/sun/tools/attach/Makefile +--- ../orig/jdk/make/com/sun/tools/attach/Makefile 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/com/sun/tools/attach/Makefile 2009-05-14 23:41:34.000000000 -0400 +@@ -36,6 +36,9 @@ endif + ifeq ($(PLATFORM), linux) + FILES_m = mapfile-linux + endif ++ifeq ($(PLATFORM), bsd) ++FILES_m = mapfile-bsd ++endif + include $(BUILDDIR)/common/Mapfile-vers.gmk + + # +diff -uNpr ../orig/jdk/make/com/sun/tools/attach/mapfile-bsd ./jdk/make/com/sun/tools/attach/mapfile-bsd +--- ../orig/jdk/make/com/sun/tools/attach/mapfile-bsd 2009-05-14 23:40:16.000000000 -0400 ++++ ./jdk/make/com/sun/tools/attach/mapfile-bsd 2009-05-14 23:41:34.000000000 -0400 +@@ -30,14 +30,12 @@ SUNWprivate_1.1 { + Java_sun_tools_attach_BsdVirtualMachine_checkPermissions; + Java_sun_tools_attach_BsdVirtualMachine_close; + Java_sun_tools_attach_BsdVirtualMachine_connect; +- Java_sun_tools_attach_BsdVirtualMachine_getBsdThreadsManager; +- Java_sun_tools_attach_BsdVirtualMachine_isBsdThreads; + Java_sun_tools_attach_BsdVirtualMachine_open; + Java_sun_tools_attach_BsdVirtualMachine_sendQuitTo; +- Java_sun_tools_attach_BsdVirtualMachine_sendQuitToChildrenOf; + Java_sun_tools_attach_BsdVirtualMachine_socket; + Java_sun_tools_attach_BsdVirtualMachine_read; + Java_sun_tools_attach_BsdVirtualMachine_write; ++ Java_sun_tools_attach_BsdVirtualMachine_createAttachFile; + local: + *; + }; +diff -uNpr ../orig/jdk/make/common/Defs-bsd.gmk ./jdk/make/common/Defs-bsd.gmk +--- ../orig/jdk/make/common/Defs-bsd.gmk 2009-05-14 23:40:16.000000000 -0400 ++++ ./jdk/make/common/Defs-bsd.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -43,12 +43,6 @@ # Get shared JDK settings include $(JDK_MAKE_SHARED_DIR)/Defs.gmk @@ -4648,9 +6864,9 @@ diff -upr ../orig/jdk/make/common/Defs-bsd.gmk ./jdk/make/common/Defs-bsd.gmk # # Japanese manpages # -diff -upr ../orig/jdk/make/common/Defs-linux.gmk ./jdk/make/common/Defs-linux.gmk ---- ../orig/jdk/make/common/Defs-linux.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/Defs-linux.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/Defs-linux.gmk ./jdk/make/common/Defs-linux.gmk +--- ../orig/jdk/make/common/Defs-linux.gmk 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/common/Defs-linux.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -292,7 +292,7 @@ override LIBSOCKET = override LIBTHREAD = override MOOT_PRIORITIES = true @@ -4660,9 +6876,9 @@ diff -upr ../orig/jdk/make/common/Defs-linux.gmk ./jdk/make/common/Defs-linux.gm ifeq ($(ARCH), amd64) override OPENWIN_LIB = $(OPENWIN_HOME)/lib64 else -diff -upr ../orig/jdk/make/common/Defs.gmk ./jdk/make/common/Defs.gmk ---- ../orig/jdk/make/common/Defs.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/Defs.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/Defs.gmk ./jdk/make/common/Defs.gmk +--- ../orig/jdk/make/common/Defs.gmk 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/common/Defs.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -188,6 +188,24 @@ else _OUTPUTDIR=$(JDK_TOPDIR)/build/$(PLATFORM)-$(ARCH) endif @@ -4707,9 +6923,9 @@ diff -upr ../orig/jdk/make/common/Defs.gmk ./jdk/make/common/Defs.gmk endif # PROGRAM LDLIBS_COMMON += $(EXTRA_LIBS) -diff -upr ../orig/jdk/make/common/Program.gmk ./jdk/make/common/Program.gmk ---- ../orig/jdk/make/common/Program.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/Program.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/Program.gmk ./jdk/make/common/Program.gmk +--- ../orig/jdk/make/common/Program.gmk 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/common/Program.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -67,11 +67,27 @@ endif # Create a dependency on libjli (Java Launcher Infrastructure) # @@ -4770,9 +6986,9 @@ diff -upr ../orig/jdk/make/common/Program.gmk ./jdk/make/common/Program.gmk # this may not be necessary... ifeq ($(PLATFORM), windows) -diff -upr ../orig/jdk/make/common/Release.gmk ./jdk/make/common/Release.gmk ---- ../orig/jdk/make/common/Release.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/Release.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/Release.gmk ./jdk/make/common/Release.gmk +--- ../orig/jdk/make/common/Release.gmk 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/common/Release.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -147,14 +147,13 @@ JRE_MAN_PAGES = \ tnameserv.1 \ unpack200.1 @@ -4832,9 +7048,9 @@ diff -upr ../orig/jdk/make/common/Release.gmk ./jdk/make/common/Release.gmk | ($(CD) $(JDK_IMAGE_DIR)/src && $(TAR) xf -); \ fi; \ done -diff -upr ../orig/jdk/make/common/internal/BinaryPlugs.gmk ./jdk/make/common/internal/BinaryPlugs.gmk ---- ../orig/jdk/make/common/internal/BinaryPlugs.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/internal/BinaryPlugs.gmk 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/internal/BinaryPlugs.gmk ./jdk/make/common/internal/BinaryPlugs.gmk +--- ../orig/jdk/make/common/internal/BinaryPlugs.gmk 2009-04-24 03:33:54.000000000 -0400 ++++ ./jdk/make/common/internal/BinaryPlugs.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -49,8 +49,6 @@ PLUG_JMF_CLASS_NAMES = \ com/sun/jmx/snmp/SnmpDataTypeEnums.class \ com/sun/jmx/snmp/SnmpDefinitions.class \ @@ -4924,9 +7140,9 @@ diff -upr ../orig/jdk/make/common/internal/BinaryPlugs.gmk ./jdk/make/common/int import-binary-plug-jar \ import-binary-plugs-completed -diff -upr ../orig/jdk/make/common/shared/Compiler-gcc.gmk ./jdk/make/common/shared/Compiler-gcc.gmk ---- ../orig/jdk/make/common/shared/Compiler-gcc.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/shared/Compiler-gcc.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/shared/Compiler-gcc.gmk ./jdk/make/common/shared/Compiler-gcc.gmk +--- ../orig/jdk/make/common/shared/Compiler-gcc.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/common/shared/Compiler-gcc.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -99,6 +99,24 @@ ifeq ($(PLATFORM), linux) endif @@ -4952,9 +7168,9 @@ diff -upr ../orig/jdk/make/common/shared/Compiler-gcc.gmk ./jdk/make/common/shar ifeq ($(PLATFORM), solaris) # Settings specific to Solaris -diff -upr ../orig/jdk/make/common/shared/Compiler.gmk ./jdk/make/common/shared/Compiler.gmk ---- ../orig/jdk/make/common/shared/Compiler.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/shared/Compiler.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/shared/Compiler.gmk ./jdk/make/common/shared/Compiler.gmk +--- ../orig/jdk/make/common/shared/Compiler.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/common/shared/Compiler.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -37,8 +37,8 @@ ifeq ($(PLATFORM), solaris) override CC_VERSION = sun endif @@ -4966,9 +7182,9 @@ diff -upr ../orig/jdk/make/common/shared/Compiler.gmk ./jdk/make/common/shared/C override CC_VERSION = gcc endif -diff -upr ../orig/jdk/make/common/shared/Defs-bsd.gmk ./jdk/make/common/shared/Defs-bsd.gmk ---- ../orig/jdk/make/common/shared/Defs-bsd.gmk 2009-05-04 18:32:16.000000000 -0400 -+++ ./jdk/make/common/shared/Defs-bsd.gmk 2009-05-04 22:40:38.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/shared/Defs-bsd.gmk ./jdk/make/common/shared/Defs-bsd.gmk +--- ../orig/jdk/make/common/shared/Defs-bsd.gmk 2009-05-14 23:40:17.000000000 -0400 ++++ ./jdk/make/common/shared/Defs-bsd.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -70,7 +70,7 @@ $(shell if [ "$1" != "" -a -d "$1" ]; th endef @@ -5007,9 +7223,9 @@ diff -upr ../orig/jdk/make/common/shared/Defs-bsd.gmk ./jdk/make/common/shared/D # Import JDK images allow for partial builds, components not built are # imported (or copied from) these import areas when needed. -diff -upr ../orig/jdk/make/common/shared/Defs-utils.gmk ./jdk/make/common/shared/Defs-utils.gmk ---- ../orig/jdk/make/common/shared/Defs-utils.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/shared/Defs-utils.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/shared/Defs-utils.gmk ./jdk/make/common/shared/Defs-utils.gmk +--- ../orig/jdk/make/common/shared/Defs-utils.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/common/shared/Defs-utils.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -77,6 +77,13 @@ ifndef FINDBUGS_HOME endif FINDBUGS = $(FINDBUGS_HOME)/bin/findbugs @@ -5057,9 +7273,9 @@ diff -upr ../orig/jdk/make/common/shared/Defs-utils.gmk ./jdk/make/common/shared + TAR = $(UTILS_USR_BIN_PATH)tar + endif +endif -diff -upr ../orig/jdk/make/common/shared/Defs.gmk ./jdk/make/common/shared/Defs.gmk ---- ../orig/jdk/make/common/shared/Defs.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/shared/Defs.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/shared/Defs.gmk ./jdk/make/common/shared/Defs.gmk +--- ../orig/jdk/make/common/shared/Defs.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/common/shared/Defs.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -143,7 +143,7 @@ $(shell \ echo older; \ else \ @@ -5069,9 +7285,9 @@ diff -upr ../orig/jdk/make/common/shared/Defs.gmk ./jdk/make/common/shared/Defs. echo older; \ else \ echo newer; \ -diff -upr ../orig/jdk/make/common/shared/Platform.gmk ./jdk/make/common/shared/Platform.gmk ---- ../orig/jdk/make/common/shared/Platform.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/shared/Platform.gmk 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/shared/Platform.gmk ./jdk/make/common/shared/Platform.gmk +--- ../orig/jdk/make/common/shared/Platform.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/common/shared/Platform.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -276,6 +276,76 @@ ifeq ($(SYSTEM_UNAME), Linux) MB_OF_MEMORY := $(shell free -m | fgrep Mem: | sed -e 's@\ \ *@ @g' | cut -d' ' -f2) endif @@ -5188,9 +7404,9 @@ diff -upr ../orig/jdk/make/common/shared/Platform.gmk ./jdk/make/common/shared/P # If blanks in the username, use the first 4 words and pack them together _USER1:=$(subst ', ,$(_USER)) _USER2:=$(subst ", ,$(_USER1)) -diff -upr ../orig/jdk/make/common/shared/Sanity-Settings.gmk ./jdk/make/common/shared/Sanity-Settings.gmk ---- ../orig/jdk/make/common/shared/Sanity-Settings.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/shared/Sanity-Settings.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/shared/Sanity-Settings.gmk ./jdk/make/common/shared/Sanity-Settings.gmk +--- ../orig/jdk/make/common/shared/Sanity-Settings.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/common/shared/Sanity-Settings.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -257,6 +257,7 @@ ifdef OPENJDK ALL_SETTINGS+=$(call addHeading,OpenJDK-specific settings) ALL_SETTINGS+=$(call addAltSetting,FREETYPE_HEADERS_PATH) @@ -5199,9 +7415,9 @@ diff -upr ../orig/jdk/make/common/shared/Sanity-Settings.gmk ./jdk/make/common/s ALL_SETTINGS+=$(call addHeading,OPENJDK Import Binary Plug Settings) ALL_SETTINGS+=$(call addAltSetting,BINARY_PLUGS_JARFILE) ALL_SETTINGS+=$(call addAltSetting,BINARY_PLUGS_PATH) -diff -upr ../orig/jdk/make/common/shared/Sanity.gmk ./jdk/make/common/shared/Sanity.gmk ---- ../orig/jdk/make/common/shared/Sanity.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/common/shared/Sanity.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/common/shared/Sanity.gmk ./jdk/make/common/shared/Sanity.gmk +--- ../orig/jdk/make/common/shared/Sanity.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/common/shared/Sanity.gmk 2009-05-14 23:41:33.000000000 -0400 @@ -96,6 +96,11 @@ ifeq ($(PLATFORM), windows) $(EGREP) "\#define" | $(NAWK) '{print $$3}') endif @@ -5214,9 +7430,9 @@ diff -upr ../orig/jdk/make/common/shared/Sanity.gmk ./jdk/make/common/shared/San # Get the version numbers of what we are using _MAKE_VER :=$(shell $(MAKE) --version 2>&1 | $(HEAD) -n 1) _ZIP_VER :=$(shell $(ZIPEXE) -help 2>&1 | $(HEAD) -n 4 | $(EGREP) '^Zip') -diff -upr ../orig/jdk/make/docs/Makefile ./jdk/make/docs/Makefile ---- ../orig/jdk/make/docs/Makefile 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/docs/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/docs/Makefile ./jdk/make/docs/Makefile +--- ../orig/jdk/make/docs/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/docs/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -232,7 +232,7 @@ JDI_HEADER = "Java Debug Interface" # you get "No packages or classes specified." due to $(CLASSPATH_SEPARATOR) # being interpreted as an end of command (newline) @@ -5226,9 +7442,9 @@ diff -upr ../orig/jdk/make/docs/Makefile ./jdk/make/docs/Makefile JAAS_DOCDIR = $(DOCSDIR)/jre/api/security/jaas/spec JAAS_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS) \ -encoding ascii \ -diff -upr ../orig/jdk/make/java/Makefile ./jdk/make/java/Makefile ---- ../orig/jdk/make/java/Makefile 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/java/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/Makefile ./jdk/make/java/Makefile +--- ../orig/jdk/make/java/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -49,7 +49,7 @@ ifeq ($(PLATFORM), solaris) endif endif # PLATFORM @@ -5238,9 +7454,9 @@ diff -upr ../orig/jdk/make/java/Makefile ./jdk/make/java/Makefile SUBDIRS += jexec endif # PLATFORM -diff -upr ../orig/jdk/make/java/hpi/hpi_common.gmk ./jdk/make/java/hpi/hpi_common.gmk ---- ../orig/jdk/make/java/hpi/hpi_common.gmk 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/java/hpi/hpi_common.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/hpi/hpi_common.gmk ./jdk/make/java/hpi/hpi_common.gmk +--- ../orig/jdk/make/java/hpi/hpi_common.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/hpi/hpi_common.gmk 2009-05-14 23:41:34.000000000 -0400 @@ -86,5 +86,9 @@ endif # Things that must be linked in. # @@ -5251,9 +7467,9 @@ diff -upr ../orig/jdk/make/java/hpi/hpi_common.gmk ./jdk/make/java/hpi/hpi_commo OTHER_LDLIBS += $(LIBSOCKET) -lnsl $(LIBM) -ldl endif +endif -diff -upr ../orig/jdk/make/java/hpi/native/Makefile ./jdk/make/java/hpi/native/Makefile ---- ../orig/jdk/make/java/hpi/native/Makefile 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/java/hpi/native/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/hpi/native/Makefile ./jdk/make/java/hpi/native/Makefile +--- ../orig/jdk/make/java/hpi/native/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/hpi/native/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -72,11 +72,18 @@ OTHER_CPPFLAGS += -DUSE_PTHREADS ifeq ($(MOOT_PRIORITIES),true) OTHER_CPPFLAGS += -DMOOT_PRIORITIES @@ -5273,9 +7489,9 @@ diff -upr ../orig/jdk/make/java/hpi/native/Makefile ./jdk/make/java/hpi/native/M ifeq ($(HAVE_GETHRVTIME),true) OTHER_CPPFLAGS += -DHAVE_GETHRVTIME endif -diff -upr ../orig/jdk/make/java/instrument/Makefile ./jdk/make/java/instrument/Makefile ---- ../orig/jdk/make/java/instrument/Makefile 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/java/instrument/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/instrument/Makefile ./jdk/make/java/instrument/Makefile +--- ../orig/jdk/make/java/instrument/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/instrument/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -102,6 +102,21 @@ ifeq ($(PLATFORM), windows) # equivalent of strcasecmp is stricmp on Windows CPPFLAGS_COMMON += -Dstrcasecmp=stricmp @@ -5306,9 +7522,9 @@ diff -upr ../orig/jdk/make/java/instrument/Makefile ./jdk/make/java/instrument/M # # Library to compile. -diff -upr ../orig/jdk/make/java/java/Makefile ./jdk/make/java/java/Makefile ---- ../orig/jdk/make/java/java/Makefile 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/java/java/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/java/Makefile ./jdk/make/java/java/Makefile +--- ../orig/jdk/make/java/java/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/java/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -167,8 +167,10 @@ OTHER_INCLUDES += -I$(PLATFORM_SRC)/nati # Is the altzone extern documented in ctime(3C) available? # @@ -5335,9 +7551,9 @@ diff -upr ../orig/jdk/make/java/java/Makefile ./jdk/make/java/java/Makefile # # Rules. -diff -upr ../orig/jdk/make/java/java/localegen.sh ./jdk/make/java/java/localegen.sh ---- ../orig/jdk/make/java/java/localegen.sh 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/java/java/localegen.sh 2009-05-05 08:21:41.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/java/localegen.sh ./jdk/make/java/java/localegen.sh +--- ../orig/jdk/make/java/java/localegen.sh 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/java/localegen.sh 2009-05-14 23:41:34.000000000 -0400 @@ -55,9 +55,9 @@ sed_script="$SED -e \"s@^#warn .*@// -- for FILE in $RESOURCE_NAMES do @@ -5350,9 +7566,9 @@ diff -upr ../orig/jdk/make/java/java/localegen.sh ./jdk/make/java/java/localegen done sed_script=$sed_script"$INPUT_FILE > $OUTPUT_FILE" -diff -upr ../orig/jdk/make/java/java_hprof_demo/Makefile ./jdk/make/java/java_hprof_demo/Makefile ---- ../orig/jdk/make/java/java_hprof_demo/Makefile 2009-01-27 15:44:38.000000000 -0500 -+++ ./jdk/make/java/java_hprof_demo/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/java_hprof_demo/Makefile ./jdk/make/java/java_hprof_demo/Makefile +--- ../orig/jdk/make/java/java_hprof_demo/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/java_hprof_demo/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -83,8 +83,10 @@ OTHER_INCLUDES = -I$(SRCDIR) \ ifeq ($(PLATFORM), windows) OTHER_LDLIBS += wsock32.lib winmm.lib @@ -5364,9 +7580,9 @@ diff -upr ../orig/jdk/make/java/java_hprof_demo/Makefile ./jdk/make/java/java_hp # # Tell library.gmk to copy the txt file first -diff -upr ../orig/jdk/make/java/jli/Makefile ./jdk/make/java/jli/Makefile ---- ../orig/jdk/make/java/jli/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/jli/Makefile 2009-05-05 08:26:57.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/jli/Makefile ./jdk/make/java/jli/Makefile +--- ../orig/jdk/make/java/jli/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/jli/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -44,8 +44,10 @@ MS_RUNTIME_STATIC = true include $(BUILDDIR)/common/Defs.gmk @@ -5442,9 +7658,9 @@ diff -upr ../orig/jdk/make/java/jli/Makefile ./jdk/make/java/jli/Makefile +endif + -diff -upr ../orig/jdk/make/java/management/Makefile ./jdk/make/java/management/Makefile ---- ../orig/jdk/make/java/management/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/management/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/management/Makefile ./jdk/make/java/management/Makefile +--- ../orig/jdk/make/java/management/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/management/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -85,6 +85,11 @@ vpath %.c $(PLATFORM_SRC)/native/com/sun OTHER_INCLUDES += \ -I$(SHARE_SRC)/native/sun/management @@ -5457,9 +7673,9 @@ diff -upr ../orig/jdk/make/java/management/Makefile ./jdk/make/java/management/M ifeq ($(PLATFORM),windows) OTHER_LDLIBS += $(JVMLIB) endif -diff -upr ../orig/jdk/make/java/net/FILES_c.gmk ./jdk/make/java/net/FILES_c.gmk ---- ../orig/jdk/make/java/net/FILES_c.gmk 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/net/FILES_c.gmk 2009-05-05 08:29:02.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/net/FILES_c.gmk ./jdk/make/java/net/FILES_c.gmk +--- ../orig/jdk/make/java/net/FILES_c.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/net/FILES_c.gmk 2009-05-14 23:41:34.000000000 -0400 @@ -43,6 +43,10 @@ ifeq ($(PLATFORM), linux) FILES_c += linux_close.c endif @@ -5471,9 +7687,9 @@ diff -upr ../orig/jdk/make/java/net/FILES_c.gmk ./jdk/make/java/net/FILES_c.gmk ifeq ($(PLATFORM), windows) FILES_c += TwoStacksPlainSocketImpl.c FILES_c += DualStackPlainSocketImpl.c -diff -upr ../orig/jdk/make/java/net/Makefile ./jdk/make/java/net/Makefile ---- ../orig/jdk/make/java/net/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/net/Makefile 2009-05-05 08:30:25.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/net/Makefile ./jdk/make/java/net/Makefile +--- ../orig/jdk/make/java/net/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/net/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -92,6 +92,12 @@ include $(BUILDDIR)/common/Mapfile-vers. include $(BUILDDIR)/common/Library.gmk @@ -5495,9 +7711,9 @@ diff -upr ../orig/jdk/make/java/net/Makefile ./jdk/make/java/net/Makefile CLASSES.export += java.lang.Integer java.io.FileDescriptor java.net.InetAddressImplFactory java.net.Inet4AddressImpl java.net.Inet6AddressImpl -diff -upr ../orig/jdk/make/java/nio/Makefile ./jdk/make/java/nio/Makefile ---- ../orig/jdk/make/java/nio/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/nio/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/nio/Makefile ./jdk/make/java/nio/Makefile +--- ../orig/jdk/make/java/nio/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/nio/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -82,7 +82,7 @@ FILES_export += \ sun/nio/ch/WindowsSelectorImpl.java endif # PLATFORM = windows @@ -5539,9 +7755,9 @@ diff -upr ../orig/jdk/make/java/nio/Makefile ./jdk/make/java/nio/Makefile include $(BUILDDIR)/common/Mapfile-vers.gmk include $(BUILDDIR)/common/Library.gmk -diff -upr ../orig/jdk/make/java/npt/Makefile ./jdk/make/java/npt/Makefile ---- ../orig/jdk/make/java/npt/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/npt/Makefile 2009-05-05 09:08:01.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/npt/Makefile ./jdk/make/java/npt/Makefile +--- ../orig/jdk/make/java/npt/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/npt/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -70,6 +70,18 @@ ifeq ($(PLATFORM), windows) OTHER_LCF += -export:nptInitialize -export:nptTerminate endif @@ -5561,9 +7777,9 @@ diff -upr ../orig/jdk/make/java/npt/Makefile ./jdk/make/java/npt/Makefile # # Add to ambient vpath so we pick up the library files # -diff -upr ../orig/jdk/make/java/redist/FILES.gmk ./jdk/make/java/redist/FILES.gmk ---- ../orig/jdk/make/java/redist/FILES.gmk 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/redist/FILES.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/redist/FILES.gmk ./jdk/make/java/redist/FILES.gmk +--- ../orig/jdk/make/java/redist/FILES.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/redist/FILES.gmk 2009-05-14 23:41:34.000000000 -0400 @@ -38,6 +38,14 @@ SHARED_FONTFILES = \ $(LIBDIR)/fonts/LucidaSansDemiBold.ttf \ @@ -5579,22 +7795,10 @@ diff -upr ../orig/jdk/make/java/redist/FILES.gmk ./jdk/make/java/redist/FILES.gm # The oblique versions of the font are derived from the base versions # and since 2D can do this derivation on the fly at run time there is no -diff -upr ../orig/jdk/make/java/redist/Makefile ./jdk/make/java/redist/Makefile ---- ../orig/jdk/make/java/redist/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/redist/Makefile 2009-05-04 17:37:15.000000000 -0400 -@@ -85,6 +85,11 @@ ifeq ($(SA_EXISTS), false) - INCLUDE_SA := false - endif - -+# FIXME: Remove when the build of libsaproc is fixed. -+ifeq ($(PLATFORM), bsd) -+ INCLUDE_SA := false -+endif -+ - ifeq ($(INCLUDE_SA), true) - IMPORT_LIST += $(LIBDIR)/sa-jdi.jar \ - $(LIB_LOCATION)/$(SALIB_NAME) -@@ -312,7 +317,7 @@ $(LIBDIR)/fonts/%.ttf: $(CLOSED_SRC)/sha +diff -uNpr ../orig/jdk/make/java/redist/Makefile ./jdk/make/java/redist/Makefile +--- ../orig/jdk/make/java/redist/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/redist/Makefile 2009-05-14 23:41:34.000000000 -0400 +@@ -312,7 +312,7 @@ $(LIBDIR)/fonts/%.ttf: $(CLOSED_SRC)/sha $(FONTSDIRFILE): $(PLATFORM_SRC)/classes/sun/awt/motif/java.fonts.dir $(install-file) @@ -5603,7 +7807,7 @@ diff -upr ../orig/jdk/make/java/redist/Makefile ./jdk/make/java/redist/Makefile # The oblique fonts are only needed/wanted on Linux. -@@ -326,7 +331,7 @@ $(LIBDIR)/oblique-fonts/%.ttf: $(CLOSED_ +@@ -326,7 +326,7 @@ $(LIBDIR)/oblique-fonts/%.ttf: $(CLOSED_ $(OBLFONTSDIRFILE): $(PLATFORM_SRC)/classes/sun/awt/motif/java.oblique-fonts.dir $(install-file) @@ -5612,9 +7816,9 @@ diff -upr ../orig/jdk/make/java/redist/Makefile ./jdk/make/java/redist/Makefile endif # !OPENJDK # Import internal files (ones that are stashed in this source tree) -diff -upr ../orig/jdk/make/java/security/Makefile ./jdk/make/java/security/Makefile ---- ../orig/jdk/make/java/security/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/security/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/security/Makefile ./jdk/make/java/security/Makefile +--- ../orig/jdk/make/java/security/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/security/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -51,7 +51,15 @@ ifeq ($(PLATFORM), windows) ifneq ($(ARCH_DATA_MODEL), 64) PROPS_SRC = $(TOPDIR)/src/share/lib/security/java.security-windows @@ -5631,9 +7835,9 @@ diff -upr ../orig/jdk/make/java/security/Makefile ./jdk/make/java/security/Makef endif # PLATFORM -diff -upr ../orig/jdk/make/java/zip/FILES_c.gmk ./jdk/make/java/zip/FILES_c.gmk ---- ../orig/jdk/make/java/zip/FILES_c.gmk 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/zip/FILES_c.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/zip/FILES_c.gmk ./jdk/make/java/zip/FILES_c.gmk +--- ../orig/jdk/make/java/zip/FILES_c.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/zip/FILES_c.gmk 2009-05-14 23:41:34.000000000 -0400 @@ -30,6 +30,10 @@ FILES_c = \ Inflater.c \ ZipFile.c \ @@ -5653,9 +7857,9 @@ diff -upr ../orig/jdk/make/java/zip/FILES_c.gmk ./jdk/make/java/zip/FILES_c.gmk - zip_util.c + inffast.c +endif -diff -upr ../orig/jdk/make/java/zip/Makefile ./jdk/make/java/zip/Makefile ---- ../orig/jdk/make/java/zip/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/java/zip/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/java/zip/Makefile ./jdk/make/java/zip/Makefile +--- ../orig/jdk/make/java/zip/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/java/zip/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -72,16 +72,24 @@ else CPPFLAGS += -UDEBUG endif @@ -5682,9 +7886,9 @@ diff -upr ../orig/jdk/make/java/zip/Makefile ./jdk/make/java/zip/Makefile OTHER_LDLIBS = $(JVMLIB) +endif + -diff -upr ../orig/jdk/make/javax/sound/FILES_c.gmk ./jdk/make/javax/sound/FILES_c.gmk ---- ../orig/jdk/make/javax/sound/FILES_c.gmk 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/javax/sound/FILES_c.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/javax/sound/FILES_c.gmk ./jdk/make/javax/sound/FILES_c.gmk +--- ../orig/jdk/make/javax/sound/FILES_c.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/javax/sound/FILES_c.gmk 2009-05-14 23:41:34.000000000 -0400 @@ -34,6 +34,8 @@ FILES_solaris = \ FILES_linux = @@ -5694,9 +7898,9 @@ diff -upr ../orig/jdk/make/javax/sound/FILES_c.gmk ./jdk/make/javax/sound/FILES_ FILES_windows = \ PLATFORM_API_WinOS_MidiIn.c \ PLATFORM_API_WinOS_MidiOut.c \ -diff -upr ../orig/jdk/make/javax/sound/Makefile ./jdk/make/javax/sound/Makefile ---- ../orig/jdk/make/javax/sound/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/javax/sound/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/javax/sound/Makefile ./jdk/make/javax/sound/Makefile +--- ../orig/jdk/make/javax/sound/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/javax/sound/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -107,6 +107,19 @@ ifeq ($(PLATFORM), linux) #MXSPP_ADD = $(PLATFORM)-$(ARCH)/ endif # PLATFORM linux @@ -5717,9 +7921,9 @@ diff -upr ../orig/jdk/make/javax/sound/Makefile ./jdk/make/javax/sound/Makefile ifeq ($(PLATFORM), solaris) ifneq ($(ARCH), amd64) # build with ports and direct audio -diff -upr ../orig/jdk/make/javax/sound/SoundDefs.gmk ./jdk/make/javax/sound/SoundDefs.gmk ---- ../orig/jdk/make/javax/sound/SoundDefs.gmk 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/javax/sound/SoundDefs.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/javax/sound/SoundDefs.gmk ./jdk/make/javax/sound/SoundDefs.gmk +--- ../orig/jdk/make/javax/sound/SoundDefs.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/javax/sound/SoundDefs.gmk 2009-05-14 23:41:34.000000000 -0400 @@ -40,6 +40,10 @@ ifeq ($(PLATFORM), linux) CPPFLAGS += -DX_PLATFORM=X_LINUX endif # PLATFORM linux @@ -5731,9 +7935,9 @@ diff -upr ../orig/jdk/make/javax/sound/SoundDefs.gmk ./jdk/make/javax/sound/Soun ifeq ($(PLATFORM), solaris) CPPFLAGS += -DX_PLATFORM=X_SOLARIS -diff -upr ../orig/jdk/make/jpda/back/Makefile ./jdk/make/jpda/back/Makefile ---- ../orig/jdk/make/jpda/back/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/jpda/back/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/jpda/back/Makefile ./jdk/make/jpda/back/Makefile +--- ../orig/jdk/make/jpda/back/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/jpda/back/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -49,8 +49,10 @@ OTHER_INCLUDES = -I$(SHARE_SRC)/transpor -I$(GENNATIVESRCDIR)/jdwp @@ -5745,9 +7949,9 @@ diff -upr ../orig/jdk/make/jpda/back/Makefile ./jdk/make/jpda/back/Makefile # # This turns off all assert() checking in the optimized library -diff -upr ../orig/jdk/make/jpda/transport/socket/Makefile ./jdk/make/jpda/transport/socket/Makefile ---- ../orig/jdk/make/jpda/transport/socket/Makefile 2009-01-27 15:44:39.000000000 -0500 -+++ ./jdk/make/jpda/transport/socket/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/jpda/transport/socket/Makefile ./jdk/make/jpda/transport/socket/Makefile +--- ../orig/jdk/make/jpda/transport/socket/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/jpda/transport/socket/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -45,6 +45,11 @@ ifeq ($(PLATFORM), linux) OTHER_LDLIBS += -lnsl $(LIBSOCKET) -lpthread endif @@ -5760,9 +7964,9 @@ diff -upr ../orig/jdk/make/jpda/transport/socket/Makefile ./jdk/make/jpda/transp ifeq ($(PLATFORM), solaris) OTHER_LDLIBS += -lnsl $(LIBSOCKET) endif -diff -upr ../orig/jdk/make/sun/awt/Makefile ./jdk/make/sun/awt/Makefile ---- ../orig/jdk/make/sun/awt/Makefile 2009-01-27 15:44:42.000000000 -0500 -+++ ./jdk/make/sun/awt/Makefile 2009-05-05 09:13:17.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/awt/Makefile ./jdk/make/sun/awt/Makefile +--- ../orig/jdk/make/sun/awt/Makefile 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/sun/awt/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -129,6 +129,14 @@ OTHER_CFLAGS += -DMOTIF_VERSION=2 OTHER_LDLIBS = $(JVMLIB) $(LIBM) -ldl endif @@ -5832,9 +8036,9 @@ diff -upr ../orig/jdk/make/sun/awt/Makefile ./jdk/make/sun/awt/Makefile LDFLAGS += -L$(MOTIF_LIB) -L$(OPENWIN_LIB) endif -diff -upr ../orig/jdk/make/sun/awt/mawt.gmk ./jdk/make/sun/awt/mawt.gmk ---- ../orig/jdk/make/sun/awt/mawt.gmk 2009-01-27 15:44:42.000000000 -0500 -+++ ./jdk/make/sun/awt/mawt.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/awt/mawt.gmk ./jdk/make/sun/awt/mawt.gmk +--- ../orig/jdk/make/sun/awt/mawt.gmk 2009-04-24 03:33:55.000000000 -0400 ++++ ./jdk/make/sun/awt/mawt.gmk 2009-05-14 23:41:34.000000000 -0400 @@ -172,7 +172,7 @@ ifeq ($(PLATFORM), solaris) OTHER_LDLIBS = $(LIBXM) -lXt -lXext $(LIBXTST) $(LIBXMU) -lX11 -lXi endif @@ -5891,9 +8095,9 @@ diff -upr ../orig/jdk/make/sun/awt/mawt.gmk ./jdk/make/sun/awt/mawt.gmk LDFLAGS += -L$(LIBDIR)/$(LIBARCH)/$(TSOBJDIR) \ $(AWT_RUNPATH) -diff -upr ../orig/jdk/make/sun/font/Makefile ./jdk/make/sun/font/Makefile ---- ../orig/jdk/make/sun/font/Makefile 2009-01-27 15:44:42.000000000 -0500 -+++ ./jdk/make/sun/font/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/font/Makefile ./jdk/make/sun/font/Makefile +--- ../orig/jdk/make/sun/font/Makefile 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/sun/font/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -177,6 +177,15 @@ else # PLATFORM # Libraries to link, and other C flags. # @@ -5918,9 +8122,9 @@ diff -upr ../orig/jdk/make/sun/font/Makefile ./jdk/make/sun/font/Makefile endif # PLATFORM -diff -upr ../orig/jdk/make/sun/image/generic/Makefile ./jdk/make/sun/image/generic/Makefile ---- ../orig/jdk/make/sun/image/generic/Makefile 2009-01-27 15:44:43.000000000 -0500 -+++ ./jdk/make/sun/image/generic/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/image/generic/Makefile ./jdk/make/sun/image/generic/Makefile +--- ../orig/jdk/make/sun/image/generic/Makefile 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/sun/image/generic/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -69,5 +69,9 @@ CPPFLAGS += \ -I$(PLATFORM_SRC)/native/$(PKGDIR)/medialib @@ -5932,9 +8136,9 @@ diff -upr ../orig/jdk/make/sun/image/generic/Makefile ./jdk/make/sun/image/gener +endif + -diff -upr ../orig/jdk/make/sun/jawt/Makefile ./jdk/make/sun/jawt/Makefile ---- ../orig/jdk/make/sun/jawt/Makefile 2009-01-27 15:44:43.000000000 -0500 -+++ ./jdk/make/sun/jawt/Makefile 2009-05-05 08:50:43.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/jawt/Makefile ./jdk/make/sun/jawt/Makefile +--- ../orig/jdk/make/sun/jawt/Makefile 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/sun/jawt/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -98,9 +98,7 @@ else # PLATFORM # # Other extra flags needed for compiling. @@ -5964,9 +8168,9 @@ diff -upr ../orig/jdk/make/sun/jawt/Makefile ./jdk/make/sun/jawt/Makefile OTHER_LDLIBS = -L$(LIBDIR)/$(LIBARCH) -lawt -L$(LIBDIR)/$(LIBARCH)/xawt -lmawt endif # PLATFORM -diff -upr ../orig/jdk/make/sun/security/jgss/wrapper/Makefile ./jdk/make/sun/security/jgss/wrapper/Makefile ---- ../orig/jdk/make/sun/security/jgss/wrapper/Makefile 2009-01-27 15:44:44.000000000 -0500 -+++ ./jdk/make/sun/security/jgss/wrapper/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/security/jgss/wrapper/Makefile ./jdk/make/sun/security/jgss/wrapper/Makefile +--- ../orig/jdk/make/sun/security/jgss/wrapper/Makefile 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/sun/security/jgss/wrapper/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -71,6 +71,10 @@ include $(BUILDDIR)/common/Library.gmk # # Libraries to link @@ -5979,9 +8183,9 @@ diff -upr ../orig/jdk/make/sun/security/jgss/wrapper/Makefile ./jdk/make/sun/sec +ifeq ($(PLATFORM), bsd) + OTHER_LDLIBS = $(JVMLIB) +endif -diff -upr ../orig/jdk/make/sun/security/pkcs11/Makefile ./jdk/make/sun/security/pkcs11/Makefile ---- ../orig/jdk/make/sun/security/pkcs11/Makefile 2009-01-27 15:44:44.000000000 -0500 -+++ ./jdk/make/sun/security/pkcs11/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/security/pkcs11/Makefile ./jdk/make/sun/security/pkcs11/Makefile +--- ../orig/jdk/make/sun/security/pkcs11/Makefile 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/sun/security/pkcs11/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -155,7 +155,7 @@ include $(BUILDDIR)/common/Library.gmk # # Libraries to link @@ -5991,9 +8195,9 @@ diff -upr ../orig/jdk/make/sun/security/pkcs11/Makefile ./jdk/make/sun/security/ OTHER_LDLIBS = $(JVMLIB) else OTHER_LDLIBS = -ldl $(JVMLIB) -diff -upr ../orig/jdk/make/sun/security/smartcardio/Makefile ./jdk/make/sun/security/smartcardio/Makefile ---- ../orig/jdk/make/sun/security/smartcardio/Makefile 2009-01-27 15:44:44.000000000 -0500 -+++ ./jdk/make/sun/security/smartcardio/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/security/smartcardio/Makefile ./jdk/make/sun/security/smartcardio/Makefile +--- ../orig/jdk/make/sun/security/smartcardio/Makefile 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/sun/security/smartcardio/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -75,6 +75,10 @@ include $(BUILDDIR)/common/Library.gmk ifeq ($(PLATFORM), windows) OTHER_LDLIBS = $(JVMLIB) winscard.lib @@ -6006,9 +8210,9 @@ diff -upr ../orig/jdk/make/sun/security/smartcardio/Makefile ./jdk/make/sun/secu + endif OTHER_CFLAGS = -D__sun_jdk endif -diff -upr ../orig/jdk/make/sun/splashscreen/FILES_c.gmk ./jdk/make/sun/splashscreen/FILES_c.gmk ---- ../orig/jdk/make/sun/splashscreen/FILES_c.gmk 2009-01-27 15:44:45.000000000 -0500 -+++ ./jdk/make/sun/splashscreen/FILES_c.gmk 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/splashscreen/FILES_c.gmk ./jdk/make/sun/splashscreen/FILES_c.gmk +--- ../orig/jdk/make/sun/splashscreen/FILES_c.gmk 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/sun/splashscreen/FILES_c.gmk 2009-05-14 23:41:34.000000000 -0400 @@ -49,20 +49,6 @@ FILES_c = \ dgif_lib.c \ gif_err.c \ @@ -6051,9 +8255,9 @@ diff -upr ../orig/jdk/make/sun/splashscreen/FILES_c.gmk ./jdk/make/sun/splashscr + zcrc32.c \ + zutil.c +endif -diff -upr ../orig/jdk/make/sun/splashscreen/Makefile ./jdk/make/sun/splashscreen/Makefile ---- ../orig/jdk/make/sun/splashscreen/Makefile 2009-01-27 15:44:45.000000000 -0500 -+++ ./jdk/make/sun/splashscreen/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/splashscreen/Makefile ./jdk/make/sun/splashscreen/Makefile +--- ../orig/jdk/make/sun/splashscreen/Makefile 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/sun/splashscreen/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -61,10 +61,26 @@ JAVALIB= CFLAGS += -DSPLASHSCREEN @@ -6101,9 +8305,9 @@ diff -upr ../orig/jdk/make/sun/splashscreen/Makefile ./jdk/make/sun/splashscreen ifeq ($(PLATFORM), linux) ifeq ($(ARCH_DATA_MODEL), 64) # 64-bit gcc has problems compiling MMX instructions. -diff -upr ../orig/jdk/make/sun/xawt/Makefile ./jdk/make/sun/xawt/Makefile ---- ../orig/jdk/make/sun/xawt/Makefile 2009-01-27 15:44:45.000000000 -0500 -+++ ./jdk/make/sun/xawt/Makefile 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/make/sun/xawt/Makefile ./jdk/make/sun/xawt/Makefile +--- ../orig/jdk/make/sun/xawt/Makefile 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/sun/xawt/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -53,6 +53,11 @@ LDFLAGS += -lpthread dummy := $(shell $(MKDIR) -p $(LIB_LOCATION)) endif @@ -6167,9 +8371,9 @@ diff -upr ../orig/jdk/make/sun/xawt/Makefile ./jdk/make/sun/xawt/Makefile ifeq ($(MILESTONE), internal) CPPFLAGS += -DINTERNAL_BUILD endif -diff -upr ../orig/jdk/make/tools/freetypecheck/Makefile ./jdk/make/tools/freetypecheck/Makefile ---- ../orig/jdk/make/tools/freetypecheck/Makefile 2009-01-27 15:44:46.000000000 -0500 -+++ ./jdk/make/tools/freetypecheck/Makefile 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/make/tools/freetypecheck/Makefile ./jdk/make/tools/freetypecheck/Makefile +--- ../orig/jdk/make/tools/freetypecheck/Makefile 2009-04-24 03:33:56.000000000 -0400 ++++ ./jdk/make/tools/freetypecheck/Makefile 2009-05-14 23:41:34.000000000 -0400 @@ -60,8 +60,12 @@ else #add runtime lib search path to ensure test will be runnable ifeq ($(PLATFORM), solaris) @@ -6185,9 +8389,9 @@ diff -upr ../orig/jdk/make/tools/freetypecheck/Makefile ./jdk/make/tools/freetyp endif endif -diff -upr ../orig/jdk/src/share/back/commonRef.c ./jdk/src/share/back/commonRef.c ---- ../orig/jdk/src/share/back/commonRef.c 2009-01-27 15:44:50.000000000 -0500 -+++ ./jdk/src/share/back/commonRef.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/back/commonRef.c ./jdk/src/share/back/commonRef.c +--- ../orig/jdk/src/share/back/commonRef.c 2009-04-24 03:33:57.000000000 -0400 ++++ ./jdk/src/share/back/commonRef.c 2009-05-14 23:41:34.000000000 -0400 @@ -23,6 +23,10 @@ * have any questions. */ @@ -6199,9 +8403,9 @@ diff -upr ../orig/jdk/src/share/back/commonRef.c ./jdk/src/share/back/commonRef. #include "util.h" #include "commonRef.h" -diff -upr ../orig/jdk/src/share/bin/java.c ./jdk/src/share/bin/java.c ---- ../orig/jdk/src/share/bin/java.c 2009-01-27 15:44:50.000000000 -0500 -+++ ./jdk/src/share/bin/java.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/bin/java.c ./jdk/src/share/bin/java.c +--- ../orig/jdk/src/share/bin/java.c 2009-04-24 03:33:57.000000000 -0400 ++++ ./jdk/src/share/bin/java.c 2009-05-14 23:41:34.000000000 -0400 @@ -104,6 +104,11 @@ static char *progname; static char *launchername; jboolean _launcher_debug = JNI_FALSE; @@ -6396,9 +8600,9 @@ diff -upr ../orig/jdk/src/share/bin/java.c ./jdk/src/share/bin/java.c static void FreeKnownVMs() { -diff -upr ../orig/jdk/src/share/bin/java.h ./jdk/src/share/bin/java.h ---- ../orig/jdk/src/share/bin/java.h 2009-01-27 15:44:50.000000000 -0500 -+++ ./jdk/src/share/bin/java.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/bin/java.h ./jdk/src/share/bin/java.h +--- ../orig/jdk/src/share/bin/java.h 2009-04-24 03:33:57.000000000 -0400 ++++ ./jdk/src/share/bin/java.h 2009-05-14 23:41:34.000000000 -0400 @@ -91,11 +91,17 @@ jboolean RemovableMachineDependentOption void PrintMachineDependentOptions(); @@ -6419,9 +8623,9 @@ diff -upr ../orig/jdk/src/share/bin/java.h ./jdk/src/share/bin/java.h /* sun.java.launcher.* platform properties. */ void SetJavaLauncherPlatformProps(void); -diff -upr ../orig/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ./jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ---- ../orig/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java 2009-01-27 15:44:52.000000000 -0500 -+++ ./jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ./jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java +--- ../orig/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java 2009-04-24 03:33:58.000000000 -0400 ++++ ./jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java 2009-05-14 23:41:34.000000000 -0400 @@ -477,6 +477,10 @@ class Metacity implements SynthConstants String[] dirs = new String[] { userHome + sep + ".themes", @@ -6433,9 +8637,9 @@ diff -upr ../orig/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.jav "/usr/share/themes", "/usr/gnome/share/themes", // Debian/Redhat/Solaris "/opt/gnome2/share/themes" // SuSE -diff -upr ../orig/jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java ./jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java ---- ../orig/jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java 2009-01-27 15:44:56.000000000 -0500 -+++ ./jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java ./jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java +--- ../orig/jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java 2009-04-24 03:34:00.000000000 -0400 ++++ ./jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java 2009-05-14 23:41:34.000000000 -0400 @@ -78,6 +78,9 @@ public class SnmpPduTrap extends SnmpPdu */ public long timeStamp ; @@ -6446,9 +8650,9 @@ diff -upr ../orig/jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java ./jdk/ /** -diff -upr ../orig/jdk/src/share/classes/java/awt/GraphicsEnvironment.java ./jdk/src/share/classes/java/awt/GraphicsEnvironment.java ---- ../orig/jdk/src/share/classes/java/awt/GraphicsEnvironment.java 2009-01-27 15:45:05.000000000 -0500 -+++ ./jdk/src/share/classes/java/awt/GraphicsEnvironment.java 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/classes/java/awt/GraphicsEnvironment.java ./jdk/src/share/classes/java/awt/GraphicsEnvironment.java +--- ../orig/jdk/src/share/classes/java/awt/GraphicsEnvironment.java 2009-04-24 03:34:04.000000000 -0400 ++++ ./jdk/src/share/classes/java/awt/GraphicsEnvironment.java 2009-05-14 23:41:34.000000000 -0400 @@ -148,7 +148,12 @@ public abstract class GraphicsEnvironmen } else { String osName = System.getProperty("os.name"); @@ -6463,9 +8667,9 @@ diff -upr ../orig/jdk/src/share/classes/java/awt/GraphicsEnvironment.java ./jdk/ (System.getenv("DISPLAY") == null)); } } else if (nm.equals("true")) { -diff -upr ../orig/jdk/src/share/classes/java/util/TimeZone.java ./jdk/src/share/classes/java/util/TimeZone.java ---- ../orig/jdk/src/share/classes/java/util/TimeZone.java 2009-01-27 15:45:18.000000000 -0500 -+++ ./jdk/src/share/classes/java/util/TimeZone.java 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/classes/java/util/TimeZone.java ./jdk/src/share/classes/java/util/TimeZone.java +--- ../orig/jdk/src/share/classes/java/util/TimeZone.java 2009-04-24 03:34:08.000000000 -0400 ++++ ./jdk/src/share/classes/java/util/TimeZone.java 2009-05-14 23:41:34.000000000 -0400 @@ -779,15 +779,13 @@ abstract public class TimeZone implement } int gmtOffset = (hours * 60 + num) * 60 * 1000; @@ -6483,9 +8687,9 @@ diff -upr ../orig/jdk/src/share/classes/java/util/TimeZone.java ./jdk/src/share/ } return zi; } -diff -upr ../orig/jdk/src/share/classes/sun/awt/FontConfiguration.java ./jdk/src/share/classes/sun/awt/FontConfiguration.java ---- ../orig/jdk/src/share/classes/sun/awt/FontConfiguration.java 2009-01-27 15:45:29.000000000 -0500 -+++ ./jdk/src/share/classes/sun/awt/FontConfiguration.java 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/classes/sun/awt/FontConfiguration.java ./jdk/src/share/classes/sun/awt/FontConfiguration.java +--- ../orig/jdk/src/share/classes/sun/awt/FontConfiguration.java 2009-04-24 03:34:16.000000000 -0400 ++++ ./jdk/src/share/classes/sun/awt/FontConfiguration.java 2009-05-14 23:41:34.000000000 -0400 @@ -1073,7 +1073,7 @@ public abstract class FontConfiguration */ HashMap<String, Boolean> existsMap; @@ -6504,9 +8708,9 @@ diff -upr ../orig/jdk/src/share/classes/sun/awt/FontConfiguration.java ./jdk/src errors++; } } -diff -upr ../orig/jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java ./jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java ---- ../orig/jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java 2009-01-27 15:45:30.000000000 -0500 -+++ ./jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java ./jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java +--- ../orig/jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java 2009-04-24 03:34:17.000000000 -0400 ++++ ./jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java 2009-05-14 23:41:34.000000000 -0400 @@ -76,7 +76,7 @@ import sun.font.NativeFont; public abstract class SunGraphicsEnvironment extends GraphicsEnvironment implements FontSupport, DisplayChangedListener { @@ -6544,9 +8748,9 @@ diff -upr ../orig/jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java . registerFontDir(jreFontDirName); } registerFontsInDir(jreFontDirName, true, Font2D.JRE_RANK, -diff -upr ../orig/jdk/src/share/classes/sun/print/PSPrinterJob.java ./jdk/src/share/classes/sun/print/PSPrinterJob.java ---- ../orig/jdk/src/share/classes/sun/print/PSPrinterJob.java 2009-01-27 15:45:34.000000000 -0500 -+++ ./jdk/src/share/classes/sun/print/PSPrinterJob.java 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/classes/sun/print/PSPrinterJob.java ./jdk/src/share/classes/sun/print/PSPrinterJob.java +--- ../orig/jdk/src/share/classes/sun/print/PSPrinterJob.java 2009-04-24 03:34:21.000000000 -0400 ++++ ./jdk/src/share/classes/sun/print/PSPrinterJob.java 2009-05-14 23:41:34.000000000 -0400 @@ -1531,7 +1531,9 @@ public class PSPrinterJob extends Raster pFlags |= NOSHEET; ncomps+=1; @@ -6558,9 +8762,17 @@ diff -upr ../orig/jdk/src/share/classes/sun/print/PSPrinterJob.java ./jdk/src/sh execCmd = new String[ncomps]; execCmd[n++] = "/usr/bin/lpr"; if ((pFlags & PRINTER) != 0) { -diff -upr ../orig/jdk/src/share/classes/sun/tools/jar/Main.java ./jdk/src/share/classes/sun/tools/jar/Main.java ---- ../orig/jdk/src/share/classes/sun/tools/jar/Main.java 2009-01-27 15:45:40.000000000 -0500 -+++ ./jdk/src/share/classes/sun/tools/jar/Main.java 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider ./jdk/src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider +--- ../orig/jdk/src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider 2009-04-24 03:34:25.000000000 -0400 ++++ ./jdk/src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider 2009-05-14 23:41:34.000000000 -0400 +@@ -30,3 +30,4 @@ + #[solaris]sun.tools.attach.SolarisAttachProvider + #[windows]sun.tools.attach.WindowsAttachProvider + #[linux]sun.tools.attach.LinuxAttachProvider ++#[bsd]sun.tools.attach.BsdAttachProvider +diff -uNpr ../orig/jdk/src/share/classes/sun/tools/jar/Main.java ./jdk/src/share/classes/sun/tools/jar/Main.java +--- ../orig/jdk/src/share/classes/sun/tools/jar/Main.java 2009-04-24 03:34:25.000000000 -0400 ++++ ./jdk/src/share/classes/sun/tools/jar/Main.java 2009-05-14 23:41:34.000000000 -0400 @@ -46,6 +46,7 @@ class Main { String zname = ""; String[] files; @@ -6611,9 +8823,9 @@ diff -upr ../orig/jdk/src/share/classes/sun/tools/jar/Main.java ./jdk/src/share/ if (!d.exists() && !d.mkdirs() || !d.isDirectory()) { throw new IOException(formatMsg( "error.create.dir", d.getPath())); -diff -upr ../orig/jdk/src/share/classes/sun/tools/jar/resources/jar.properties ./jdk/src/share/classes/sun/tools/jar/resources/jar.properties ---- ../orig/jdk/src/share/classes/sun/tools/jar/resources/jar.properties 2009-01-27 15:45:40.000000000 -0500 -+++ ./jdk/src/share/classes/sun/tools/jar/resources/jar.properties 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/classes/sun/tools/jar/resources/jar.properties ./jdk/src/share/classes/sun/tools/jar/resources/jar.properties +--- ../orig/jdk/src/share/classes/sun/tools/jar/resources/jar.properties 2009-04-24 03:34:25.000000000 -0400 ++++ ./jdk/src/share/classes/sun/tools/jar/resources/jar.properties 2009-05-14 23:41:34.000000000 -0400 @@ -44,6 +44,8 @@ error.create.dir=\ {0} : could not create directory error.incorrect.length=\ @@ -6623,9 +8835,9 @@ diff -upr ../orig/jdk/src/share/classes/sun/tools/jar/resources/jar.properties . out.added.manifest=\ added manifest out.update.manifest=\ -diff -upr ../orig/jdk/src/share/hpi/include/hpi_impl.h ./jdk/src/share/hpi/include/hpi_impl.h ---- ../orig/jdk/src/share/hpi/include/hpi_impl.h 2009-01-27 15:45:43.000000000 -0500 -+++ ./jdk/src/share/hpi/include/hpi_impl.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/hpi/include/hpi_impl.h ./jdk/src/share/hpi/include/hpi_impl.h +--- ../orig/jdk/src/share/hpi/include/hpi_impl.h 2009-04-24 03:34:28.000000000 -0400 ++++ ./jdk/src/share/hpi/include/hpi_impl.h 2009-05-14 23:41:34.000000000 -0400 @@ -138,7 +138,11 @@ int sysConnect(int fd, struct sockaddr * int sysBind(int fd, struct sockaddr *him, int len); int sysAccept(int fd, struct sockaddr *him, int *len); @@ -6639,9 +8851,9 @@ diff -upr ../orig/jdk/src/share/hpi/include/hpi_impl.h ./jdk/src/share/hpi/inclu ssize_t sysSendTo(int fd, char *buf, int len, int flags, struct sockaddr *to, int tolen); ssize_t sysRecvFrom(int fd, char *buf, int nbytes, int flags, -diff -upr ../orig/jdk/src/share/lib/security/java.security-openbsd ./jdk/src/share/lib/security/java.security-openbsd ---- ../orig/jdk/src/share/lib/security/java.security-openbsd 2009-05-04 18:32:16.000000000 -0400 -+++ ./jdk/src/share/lib/security/java.security-openbsd 2009-05-05 09:50:18.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/lib/security/java.security-openbsd ./jdk/src/share/lib/security/java.security-openbsd +--- ../orig/jdk/src/share/lib/security/java.security-openbsd 2009-05-14 23:40:17.000000000 -0400 ++++ ./jdk/src/share/lib/security/java.security-openbsd 2009-05-14 23:41:34.000000000 -0400 @@ -66,7 +66,14 @@ security.provider.8=sun.security.smartca # On Windows systems, the URLs file:/dev/random and file:/dev/urandom # enables use of the Microsoft CryptoAPI seed functionality. @@ -6658,9 +8870,9 @@ diff -upr ../orig/jdk/src/share/lib/security/java.security-openbsd ./jdk/src/sha # # The entropy gathering device is described as a URL and can also # be specified with the system property "java.security.egd". For example, -diff -upr ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/defines.h ./jdk/src/share/native/com/sun/java/util/jar/pack/defines.h ---- ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/defines.h 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/com/sun/java/util/jar/pack/defines.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/defines.h ./jdk/src/share/native/com/sun/java/util/jar/pack/defines.h +--- ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/defines.h 2009-04-24 03:34:28.000000000 -0400 ++++ ./jdk/src/share/native/com/sun/java/util/jar/pack/defines.h 2009-05-14 23:41:34.000000000 -0400 @@ -32,6 +32,10 @@ #include <unistd.h> #endif @@ -6686,9 +8898,9 @@ diff -upr ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/defines.h ./jd #ifdef _MSC_VER typedef LONGLONG jlong; typedef DWORDLONG julong; -diff -upr ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp ./jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp ---- ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp ./jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp +--- ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp 2009-04-24 03:34:28.000000000 -0400 ++++ ./jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp 2009-05-14 23:41:34.000000000 -0400 @@ -33,9 +33,14 @@ #include <limits.h> #include <time.h> @@ -6726,9 +8938,9 @@ diff -upr ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp ./jdk true)); } -diff -upr ../orig/jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c ./jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c ---- ../orig/jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c ./jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c +--- ../orig/jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c 2009-04-24 03:34:28.000000000 -0400 ++++ ./jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c 2009-05-14 23:41:34.000000000 -0400 @@ -33,7 +33,11 @@ #include <jni.h> @@ -6741,9 +8953,9 @@ diff -upr ../orig/jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c . #include "SoundDefs.h" #include "DirectAudio.h" #include "Utilities.h" -diff -upr ../orig/jdk/src/share/native/com/sun/media/sound/Platform.c ./jdk/src/share/native/com/sun/media/sound/Platform.c ---- ../orig/jdk/src/share/native/com/sun/media/sound/Platform.c 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/com/sun/media/sound/Platform.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/com/sun/media/sound/Platform.c ./jdk/src/share/native/com/sun/media/sound/Platform.c +--- ../orig/jdk/src/share/native/com/sun/media/sound/Platform.c 2009-04-24 03:34:28.000000000 -0400 ++++ ./jdk/src/share/native/com/sun/media/sound/Platform.c 2009-05-14 23:41:34.000000000 -0400 @@ -99,5 +99,17 @@ JNIEXPORT jint JNICALL Java_com_sun_medi return com_sun_media_sound_Platform_LIB_ALSA; } @@ -6762,9 +8974,9 @@ diff -upr ../orig/jdk/src/share/native/com/sun/media/sound/Platform.c ./jdk/src/ +#endif return 0; } -diff -upr ../orig/jdk/src/share/native/com/sun/media/sound/SoundDefs.h ./jdk/src/share/native/com/sun/media/sound/SoundDefs.h ---- ../orig/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/com/sun/media/sound/SoundDefs.h ./jdk/src/share/native/com/sun/media/sound/SoundDefs.h +--- ../orig/jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2009-04-24 03:34:28.000000000 -0400 ++++ ./jdk/src/share/native/com/sun/media/sound/SoundDefs.h 2009-05-14 23:41:34.000000000 -0400 @@ -31,6 +31,7 @@ #define X_WINDOWS 1 #define X_SOLARIS 2 @@ -6792,9 +9004,9 @@ diff -upr ../orig/jdk/src/share/native/com/sun/media/sound/SoundDefs.h ./jdk/src + + #endif // __SOUNDDEFS_INCLUDED__ -diff -upr ../orig/jdk/src/share/native/common/check_code.c ./jdk/src/share/native/common/check_code.c ---- ../orig/jdk/src/share/native/common/check_code.c 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/common/check_code.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/common/check_code.c ./jdk/src/share/native/common/check_code.c +--- ../orig/jdk/src/share/native/common/check_code.c 2009-04-24 03:34:28.000000000 -0400 ++++ ./jdk/src/share/native/common/check_code.c 2009-05-14 23:41:34.000000000 -0400 @@ -1069,7 +1069,7 @@ verify_method(context_type *context, jcl * Make sure that branches don't go into the middle of nowhere. */ @@ -6856,9 +9068,9 @@ diff -upr ../orig/jdk/src/share/native/common/check_code.c ./jdk/src/share/nativ /* There can't be more than 64K labels because of the limit * on per-method byte code length. */ -diff -upr ../orig/jdk/src/share/native/java/io/io_util.h ./jdk/src/share/native/java/io/io_util.h ---- ../orig/jdk/src/share/native/java/io/io_util.h 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/java/io/io_util.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/java/io/io_util.h ./jdk/src/share/native/java/io/io_util.h +--- ../orig/jdk/src/share/native/java/io/io_util.h 2009-04-24 03:34:29.000000000 -0400 ++++ ./jdk/src/share/native/java/io/io_util.h 2009-05-14 23:41:34.000000000 -0400 @@ -29,7 +29,15 @@ extern jfieldID IO_fd_fdID; extern jfieldID IO_handle_fdID; @@ -6876,9 +9088,9 @@ diff -upr ../orig/jdk/src/share/native/java/io/io_util.h ./jdk/src/share/native/ #define O_SYNC (0x0800) #define O_DSYNC (0x2000) #endif -diff -upr ../orig/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h ./jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h ---- ../orig/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h ./jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h +--- ../orig/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h 2009-04-24 03:34:29.000000000 -0400 ++++ ./jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h 2009-05-14 23:41:34.000000000 -0400 @@ -25,6 +25,10 @@ * have any questions. */ @@ -6904,9 +9116,9 @@ diff -upr ../orig/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h ./jdk/s /* * ANSI/POSIX -diff -upr ../orig/jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h ./jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h ---- ../orig/jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h ./jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h +--- ../orig/jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h 2009-04-24 03:34:29.000000000 -0400 ++++ ./jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h 2009-05-14 23:41:34.000000000 -0400 @@ -61,7 +61,7 @@ #define log1p jlog1p #define expm1 jexpm1 @@ -6916,9 +9128,9 @@ diff -upr ../orig/jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h ./jdk/ #define __ieee754_sqrt __j__ieee754_sqrt #define __ieee754_acos __j__ieee754_acos #define __ieee754_acosh __j__ieee754_acosh -diff -upr ../orig/jdk/src/share/native/java/util/zip/Inflater.c ./jdk/src/share/native/java/util/zip/Inflater.c ---- ../orig/jdk/src/share/native/java/util/zip/Inflater.c 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/java/util/zip/Inflater.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/java/util/zip/Inflater.c ./jdk/src/share/native/java/util/zip/Inflater.c +--- ../orig/jdk/src/share/native/java/util/zip/Inflater.c 2009-04-24 03:34:29.000000000 -0400 ++++ ./jdk/src/share/native/java/util/zip/Inflater.c 2009-05-14 23:41:34.000000000 -0400 @@ -67,6 +67,10 @@ Java_java_util_zip_Inflater_init(JNIEnv return jlong_zero; } else { @@ -6941,9 +9153,9 @@ diff -upr ../orig/jdk/src/share/native/java/util/zip/Inflater.c ./jdk/src/share/ } JNIEXPORT void JNICALL -diff -upr ../orig/jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h ./jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h ---- ../orig/jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h 2009-01-27 15:45:44.000000000 -0500 -+++ ./jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h ./jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h +--- ../orig/jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h 2009-04-24 03:34:29.000000000 -0400 ++++ ./jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h 2009-05-14 23:41:34.000000000 -0400 @@ -42,44 +42,49 @@ /* for _LP64 */ #include <sys/types.h> @@ -7027,9 +9239,9 @@ diff -upr ../orig/jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h ./jdk/sr #endif #if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32) -diff -upr ../orig/jdk/src/share/native/sun/awt/debug/debug_util.h ./jdk/src/share/native/sun/awt/debug/debug_util.h ---- ../orig/jdk/src/share/native/sun/awt/debug/debug_util.h 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/debug/debug_util.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/debug/debug_util.h ./jdk/src/share/native/sun/awt/debug/debug_util.h +--- ../orig/jdk/src/share/native/sun/awt/debug/debug_util.h 2009-04-24 03:34:29.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/debug/debug_util.h 2009-05-14 23:41:34.000000000 -0400 @@ -50,7 +50,9 @@ typedef void * dmutex_t; #include <stdio.h> #include <string.h> @@ -7040,9 +9252,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/debug/debug_util.h ./jdk/src/shar #include <limits.h> /* keep these after the other headers */ -diff -upr ../orig/jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c ./jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c ---- ../orig/jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c ./jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c +--- ../orig/jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c 2009-04-24 03:34:29.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c 2009-05-14 23:41:34.000000000 -0400 @@ -24,7 +24,11 @@ */ @@ -7055,9 +9267,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c ./jdk/s #include "sun_awt_image_BufImgSurfaceData.h" -diff -upr ../orig/jdk/src/share/native/sun/awt/image/DataBufferNative.c ./jdk/src/share/native/sun/awt/image/DataBufferNative.c ---- ../orig/jdk/src/share/native/sun/awt/image/DataBufferNative.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/image/DataBufferNative.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/image/DataBufferNative.c ./jdk/src/share/native/sun/awt/image/DataBufferNative.c +--- ../orig/jdk/src/share/native/sun/awt/image/DataBufferNative.c 2009-04-24 03:34:29.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/image/DataBufferNative.c 2009-05-14 23:41:34.000000000 -0400 @@ -23,7 +23,11 @@ * have any questions. */ @@ -7070,9 +9282,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/image/DataBufferNative.c ./jdk/sr #include "SurfaceData.h" #include "sun_awt_image_DataBufferNative.h" -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c 2009-05-14 23:41:34.000000000 -0400 @@ -86,7 +86,7 @@ typedef struct { #endif /* MLIB_USE_FTOI_CLAMPING */ @@ -7112,9 +9324,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c ./ #endif /* _NO_LONGLONG */ -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c 2009-05-14 23:41:34.000000000 -0400 @@ -126,7 +126,7 @@ #define D2I(x) CLAMP_S32((x) SAT_OFF) @@ -7154,9 +9366,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c . #endif /* _NO_LONGLONG */ /***************************************************************/ -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c 2009-05-14 23:41:34.000000000 -0400 @@ -94,7 +94,7 @@ #define D2I(x) CLAMP_S32((x) SAT_OFF) @@ -7196,9 +9408,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c ./ #endif /* _NO_LONGLONG */ /***************************************************************/ -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c 2009-05-14 23:41:34.000000000 -0400 @@ -126,7 +126,7 @@ #define D2I(x) CLAMP_S32((x) SAT_OFF) @@ -7238,9 +9450,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c ./ #endif /* _NO_LONGLONG */ /***************************************************************/ -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c 2009-05-14 23:41:34.000000000 -0400 @@ -95,7 +95,7 @@ #define D2I(x) CLAMP_S32((x) SAT_OFF) @@ -7280,9 +9492,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c ./j #endif /* _NO_LONGLONG */ /***************************************************************/ -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c 2009-05-14 23:41:34.000000000 -0400 @@ -126,7 +126,7 @@ #define D2I(x) CLAMP_S32((x) SAT_OFF) @@ -7322,9 +9534,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c #endif /* _NO_LONGLONG */ /***************************************************************/ -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c 2009-05-14 23:41:34.000000000 -0400 @@ -94,7 +94,7 @@ #define D2I(x) CLAMP_S32((x) SAT_OFF) @@ -7364,9 +9576,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c . #endif /* _NO_LONGLONG */ /***************************************************************/ -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c 2009-01-27 15:45:45.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c 2009-05-14 23:41:34.000000000 -0400 @@ -95,7 +95,7 @@ void mlib_ImageCopy_bit_na(const mlib_u8 dst = dp[0]; if (ld_offset + size < 32) { @@ -7586,9 +9798,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c ./j } #else /* _LONGLONG */ -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c 2009-05-14 23:41:34.000000000 -0400 @@ -168,7 +168,7 @@ } @@ -7869,9 +10081,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c ./ dp[12] = t0; dp[13] = t1; dp[14] = t2; -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c 2009-05-14 23:41:34.000000000 -0400 @@ -88,7 +88,7 @@ typedef union { } d64_2_f32; @@ -8023,9 +10235,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c . ((mlib_u32*)lh)[0] = l; ((mlib_u32*)lh)[1] = l; ((mlib_u32*)lh)[2] = l; ((mlib_u32*)lh)[3] = h; -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c ./jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c 2009-05-14 23:41:34.000000000 -0400 @@ -30,7 +30,7 @@ typedef union { mlib_d64 db; @@ -8035,9 +10247,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c ./jdk/ mlib_s32 int1, int0; #else mlib_s32 int0, int1; -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c 2009-05-14 23:41:34.000000000 -0400 @@ -275,11 +275,11 @@ void mlib_ImageCopy_bit_al(const mlib_u8 for (i = 0; j <= (b_size - 4); j += 4, i++) { src0 = src1; @@ -8136,9 +10348,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c ./jdk s0 = s1; dp += SIZE; sp += SIZE; -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c 2009-05-14 23:41:34.000000000 -0400 @@ -120,7 +120,7 @@ } \ } @@ -9371,9 +11583,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c . dp[12] = t0; dp[13] = t1; dp[14] = t2; -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_image.h ./jdk/src/share/native/sun/awt/medialib/mlib_image.h ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_image.h 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_image.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_image.h ./jdk/src/share/native/sun/awt/medialib/mlib_image.h +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_image.h 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_image.h 2009-05-14 23:41:34.000000000 -0400 @@ -27,6 +27,11 @@ #ifndef MLIB_IMAGE_H #define MLIB_IMAGE_H @@ -9386,9 +11598,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_image.h ./jdk/src/s #include <mlib_types.h> #include <mlib_status.h> #include <mlib_sys.h> -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_sys.c ./jdk/src/share/native/sun/awt/medialib/mlib_sys.c ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_sys.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_sys.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_sys.c ./jdk/src/share/native/sun/awt/medialib/mlib_sys.c +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_sys.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_sys.c 2009-05-14 23:41:34.000000000 -0400 @@ -26,9 +26,15 @@ #include <stdlib.h> @@ -9419,9 +11631,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_sys.c ./jdk/src/sha return (void *) memalign(8, size); #endif /* _MSC_VER */ } -diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h ./jdk/src/share/native/sun/awt/medialib/mlib_types.h ---- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_types.h 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h ./jdk/src/share/native/sun/awt/medialib/mlib_types.h +--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/awt/medialib/mlib_types.h 2009-05-14 23:41:34.000000000 -0400 @@ -59,7 +59,10 @@ typedef double mlib_d64; #if defined(__SUNPRO_C) || defined(__SUNPRO_CC) || defined(__GNUC__) @@ -9434,9 +11646,9 @@ diff -upr ../orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h ./jdk/src/s #include <stdint.h> /* for uintptr_t */ #include <malloc.h> /* for ptrdiff_t */ #else -diff -upr ../orig/jdk/src/share/native/sun/font/AccelGlyphCache.c ./jdk/src/share/native/sun/font/AccelGlyphCache.c ---- ../orig/jdk/src/share/native/sun/font/AccelGlyphCache.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/font/AccelGlyphCache.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/font/AccelGlyphCache.c ./jdk/src/share/native/sun/font/AccelGlyphCache.c +--- ../orig/jdk/src/share/native/sun/font/AccelGlyphCache.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/font/AccelGlyphCache.c 2009-05-14 23:41:34.000000000 -0400 @@ -23,7 +23,11 @@ * have any questions. */ @@ -9449,9 +11661,9 @@ diff -upr ../orig/jdk/src/share/native/sun/font/AccelGlyphCache.c ./jdk/src/shar #include "jni.h" #include "AccelGlyphCache.h" #include "Trace.h" -diff -upr ../orig/jdk/src/share/native/sun/font/DrawGlyphList.c ./jdk/src/share/native/sun/font/DrawGlyphList.c ---- ../orig/jdk/src/share/native/sun/font/DrawGlyphList.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/font/DrawGlyphList.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/font/DrawGlyphList.c ./jdk/src/share/native/sun/font/DrawGlyphList.c +--- ../orig/jdk/src/share/native/sun/font/DrawGlyphList.c 2009-04-24 03:34:30.000000000 -0400 ++++ ./jdk/src/share/native/sun/font/DrawGlyphList.c 2009-05-14 23:41:34.000000000 -0400 @@ -26,7 +26,11 @@ #include "jlong.h" #include "math.h" @@ -9464,9 +11676,9 @@ diff -upr ../orig/jdk/src/share/native/sun/font/DrawGlyphList.c ./jdk/src/share/ #include "sunfontids.h" #include "fontscalerdefs.h" #include "glyphblitting.h" -diff -upr ../orig/jdk/src/share/native/sun/font/sunFont.c ./jdk/src/share/native/sun/font/sunFont.c ---- ../orig/jdk/src/share/native/sun/font/sunFont.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/font/sunFont.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/font/sunFont.c ./jdk/src/share/native/sun/font/sunFont.c +--- ../orig/jdk/src/share/native/sun/font/sunFont.c 2009-04-24 03:34:31.000000000 -0400 ++++ ./jdk/src/share/native/sun/font/sunFont.c 2009-05-14 23:41:34.000000000 -0400 @@ -24,7 +24,9 @@ */ @@ -9477,9 +11689,9 @@ diff -upr ../orig/jdk/src/share/native/sun/font/sunFont.c ./jdk/src/share/native #include "string.h" #include "gdefs.h" #include "jlong.h" -diff -upr ../orig/jdk/src/share/native/sun/java2d/SurfaceData.c ./jdk/src/share/native/sun/java2d/SurfaceData.c ---- ../orig/jdk/src/share/native/sun/java2d/SurfaceData.c 2009-01-27 15:45:46.000000000 -0500 -+++ ./jdk/src/share/native/sun/java2d/SurfaceData.c 2009-05-04 17:37:16.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/java2d/SurfaceData.c ./jdk/src/share/native/sun/java2d/SurfaceData.c +--- ../orig/jdk/src/share/native/sun/java2d/SurfaceData.c 2009-04-24 03:34:31.000000000 -0400 ++++ ./jdk/src/share/native/sun/java2d/SurfaceData.c 2009-05-14 23:41:34.000000000 -0400 @@ -28,7 +28,11 @@ #include "jni_util.h" #include "Disposer.h" @@ -9492,9 +11704,9 @@ diff -upr ../orig/jdk/src/share/native/sun/java2d/SurfaceData.c ./jdk/src/share/ #include "string.h" /** -diff -upr ../orig/jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h ./jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h ---- ../orig/jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h 2009-01-27 15:45:47.000000000 -0500 -+++ ./jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h ./jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h +--- ../orig/jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h 2009-04-24 03:34:31.000000000 -0400 ++++ ./jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h 2009-05-14 23:41:34.000000000 -0400 @@ -26,6 +26,9 @@ #ifndef OGLFuncs_h_Included #define OGLFuncs_h_Included @@ -9505,9 +11717,9 @@ diff -upr ../orig/jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h ./jdk/src/sh #include "jni.h" #include "J2D_GL/gl.h" #include "J2D_GL/glext.h" -diff -upr ../orig/jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c ./jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c ---- ../orig/jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c 2009-01-27 15:45:47.000000000 -0500 -+++ ./jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c ./jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c +--- ../orig/jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c 2009-04-24 03:34:31.000000000 -0400 ++++ ./jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c 2009-05-14 23:41:34.000000000 -0400 @@ -25,7 +25,11 @@ #ifndef HEADLESS @@ -9520,9 +11732,9 @@ diff -upr ../orig/jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c ./jdk/ #include "sun_java2d_pipe_BufferedOpCodes.h" -diff -upr ../orig/jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c ./jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c ---- ../orig/jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c 2009-01-27 15:45:47.000000000 -0500 -+++ ./jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c ./jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c +--- ../orig/jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c 2009-04-24 03:34:31.000000000 -0400 ++++ ./jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c 2009-05-14 23:41:34.000000000 -0400 @@ -25,7 +25,11 @@ #ifndef HEADLESS @@ -9535,9 +11747,9 @@ diff -upr ../orig/jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c ./jdk #include <math.h> #include <jlong.h> -diff -upr ../orig/jdk/src/share/transport/socket/socketTransport.c ./jdk/src/share/transport/socket/socketTransport.c ---- ../orig/jdk/src/share/transport/socket/socketTransport.c 2009-01-27 15:45:48.000000000 -0500 -+++ ./jdk/src/share/transport/socket/socketTransport.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/share/transport/socket/socketTransport.c ./jdk/src/share/transport/socket/socketTransport.c +--- ../orig/jdk/src/share/transport/socket/socketTransport.c 2009-04-24 03:34:32.000000000 -0400 ++++ ./jdk/src/share/transport/socket/socketTransport.c 2009-05-14 23:41:34.000000000 -0400 @@ -65,6 +65,9 @@ static jdwpTransportEnv single_env = (jd #define HEADER_SIZE 11 #define MAX_DATA_SIZE 1000 @@ -9625,9 +11837,9 @@ diff -upr ../orig/jdk/src/share/transport/socket/socketTransport.c ./jdk/src/sha return res; } else if (res == 0) { break; /* eof, return nbytes which is less than len */ -diff -upr ../orig/jdk/src/solaris/back/exec_md.c ./jdk/src/solaris/back/exec_md.c ---- ../orig/jdk/src/solaris/back/exec_md.c 2009-01-27 15:45:48.000000000 -0500 -+++ ./jdk/src/solaris/back/exec_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/back/exec_md.c ./jdk/src/solaris/back/exec_md.c +--- ../orig/jdk/src/solaris/back/exec_md.c 2009-04-24 03:34:32.000000000 -0400 ++++ ./jdk/src/solaris/back/exec_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -30,7 +30,7 @@ #include "sys.h" #include "util.h" @@ -9637,9 +11849,9 @@ diff -upr ../orig/jdk/src/solaris/back/exec_md.c ./jdk/src/solaris/back/exec_md. /* Linux */ #define FORK() fork() #else -diff -upr ../orig/jdk/src/solaris/back/linker_md.c ./jdk/src/solaris/back/linker_md.c ---- ../orig/jdk/src/solaris/back/linker_md.c 2009-01-27 15:45:48.000000000 -0500 -+++ ./jdk/src/solaris/back/linker_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/back/linker_md.c ./jdk/src/solaris/back/linker_md.c +--- ../orig/jdk/src/solaris/back/linker_md.c 2009-04-24 03:34:32.000000000 -0400 ++++ ./jdk/src/solaris/back/linker_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -48,6 +48,12 @@ #include "threads_md.h" #endif @@ -9665,9 +11877,9 @@ diff -upr ../orig/jdk/src/solaris/back/linker_md.c ./jdk/src/solaris/back/linker } } -diff -upr ../orig/jdk/src/solaris/back/util_md.h ./jdk/src/solaris/back/util_md.h ---- ../orig/jdk/src/solaris/back/util_md.h 2009-01-27 15:45:48.000000000 -0500 -+++ ./jdk/src/solaris/back/util_md.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/back/util_md.h ./jdk/src/solaris/back/util_md.h +--- ../orig/jdk/src/solaris/back/util_md.h 2009-04-24 03:34:32.000000000 -0400 ++++ ./jdk/src/solaris/back/util_md.h 2009-05-14 23:41:34.000000000 -0400 @@ -28,6 +28,7 @@ #include <limits.h> @@ -9685,9 +11897,9 @@ diff -upr ../orig/jdk/src/solaris/back/util_md.h ./jdk/src/solaris/back/util_md. #define HOST_TO_JAVA_CHAR(x) (((x & 0xff) << 8) | ((x >> 8) & (0xff))) #define HOST_TO_JAVA_SHORT(x) (((x & 0xff) << 8) | ((x >> 8) & (0xff))) -diff -upr ../orig/jdk/src/solaris/bin/java_md.c ./jdk/src/solaris/bin/java_md.c ---- ../orig/jdk/src/solaris/bin/java_md.c 2009-01-27 15:45:48.000000000 -0500 -+++ ./jdk/src/solaris/bin/java_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/bin/java_md.c ./jdk/src/solaris/bin/java_md.c +--- ../orig/jdk/src/solaris/bin/java_md.c 2009-04-24 03:34:32.000000000 -0400 ++++ ./jdk/src/solaris/bin/java_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -24,6 +24,7 @@ */ @@ -9902,9 +12114,9 @@ diff -upr ../orig/jdk/src/solaris/bin/java_md.c ./jdk/src/solaris/bin/java_md.c /* Coarse estimation of number of digits assuming the worst case is a 64-bit pid. */ #define MAX_PID_STR_SZ 20 -diff -upr ../orig/jdk/src/solaris/bin/java_md.h ./jdk/src/solaris/bin/java_md.h ---- ../orig/jdk/src/solaris/bin/java_md.h 2009-01-27 15:45:48.000000000 -0500 -+++ ./jdk/src/solaris/bin/java_md.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/bin/java_md.h ./jdk/src/solaris/bin/java_md.h +--- ../orig/jdk/src/solaris/bin/java_md.h 2009-04-24 03:34:32.000000000 -0400 ++++ ./jdk/src/solaris/bin/java_md.h 2009-05-14 23:41:34.000000000 -0400 @@ -58,10 +58,14 @@ #include <sys/time.h> #define CounterGet() (gethrtime()/1000) @@ -9921,9 +12133,9 @@ diff -upr ../orig/jdk/src/solaris/bin/java_md.h ./jdk/src/solaris/bin/java_md.h /* * Function prototypes. -diff -upr ../orig/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java ./jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java ---- ../orig/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java 2009-01-27 15:45:48.000000000 -0500 -+++ ./jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java ./jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java +--- ../orig/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java 2009-04-24 03:34:33.000000000 -0400 ++++ ./jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java 2009-05-14 23:41:34.000000000 -0400 @@ -403,7 +403,7 @@ public class X11GraphicsEnvironment if (fontID != null) { fileName = (String)fontNameMap.get(fontID); @@ -9942,9 +12154,9 @@ diff -upr ../orig/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java ./ fontConfigDirs.add(jreLibDirName+File.separator+"oblique-fonts"); } fontdirs = (String[])fontConfigDirs.toArray(new String[0]); -diff -upr ../orig/jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java ./jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java ---- ../orig/jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java ./jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java +--- ../orig/jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java 2009-04-24 03:34:33.000000000 -0400 ++++ ./jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java 2009-05-14 23:41:34.000000000 -0400 @@ -119,7 +119,11 @@ public class UnixPrintServiceLookup exte } @@ -9958,46 +12170,115 @@ diff -upr ../orig/jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java } static final int UNINITIALIZED = -1; -diff -upr ../orig/jdk/src/solaris/classes/sun/tools/attach/BsdAttachProvider.java ./jdk/src/solaris/classes/sun/tools/attach/BsdAttachProvider.java ---- ../orig/jdk/src/solaris/classes/sun/tools/attach/BsdAttachProvider.java 2009-05-04 18:32:16.000000000 -0400 -+++ ./jdk/src/solaris/classes/sun/tools/attach/BsdAttachProvider.java 2009-05-04 17:37:15.000000000 -0400 -@@ -54,31 +54,13 @@ public class BsdAttachProvider extends H - public VirtualMachine attachVirtualMachine(String vmid) - throws AttachNotSupportedException, IOException - { -- checkAttachPermission(); -- -- // AttachNotSupportedException will be thrown if the target VM can be determined -- // to be not attachable. -- testAttachable(vmid); +diff -uNpr ../orig/jdk/src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java ./jdk/src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java +--- ../orig/jdk/src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java 2009-05-14 23:40:17.000000000 -0400 ++++ ./jdk/src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java 2009-05-14 23:41:34.000000000 -0400 +@@ -38,9 +38,6 @@ import java.util.Properties; + */ + public class BsdVirtualMachine extends HotSpotVirtualMachine { + +- // Indicates if this machine uses the old BsdThreads +- static boolean isBsdThreads; - -- return new BsdVirtualMachine(this, vmid); -+ throw new AttachNotSupportedException("Attach not yet supported on BSD"); + // The patch to the socket file created by the target VM + String path; + +@@ -65,25 +62,10 @@ public class BsdVirtualMachine extends H + // Then we attempt to find the socket file again. + path = findSocketFile(pid); + if (path == null) { +- File f = createAttachFile(pid); ++ File f = new File("/tmp/.attach_pid" + pid); ++ createAttachFile(f.getPath()); + try { +- // On BsdThreads each thread is a process and we don't have the +- // pid of the VMThread which has SIGQUIT unblocked. To workaround +- // this we get the pid of the "manager thread" that is created +- // by the first call to pthread_create. This is parent of all +- // threads (except the initial thread). +- if (isBsdThreads) { +- int mpid; +- try { +- mpid = getBsdThreadsManager(pid); +- } catch (IOException x) { +- throw new AttachNotSupportedException(x.getMessage()); +- } +- assert(mpid >= 1); +- sendQuitToChildrenOf(mpid); +- } else { +- sendQuitTo(pid); +- } ++ sendQuitTo(pid); + + // give the target VM time to start the attach mechanism + int i = 0; +@@ -265,37 +247,14 @@ public class BsdVirtualMachine extends H + // First check for a .java_pid<pid> file in the working directory + // of the target process + String fn = ".java_pid" + pid; +- String path = "/proc/" + pid + "/cwd/" + fn; ++ String path = "/tmp/" + fn; + File f = new File(path); + if (!f.exists()) { +- // Not found, so try /tmp +- path = "/tmp/" + fn; +- f = new File(path); +- if (!f.exists()) { +- return null; // not found +- } ++ return null; // not found + } + return path; } - public VirtualMachine attachVirtualMachine(VirtualMachineDescriptor vmd) - throws AttachNotSupportedException, IOException - { -- if (vmd.provider() != this) { -- throw new AttachNotSupportedException("provider mismatch"); +- // On Solaris/Bsd a simple handshake is used to start the attach mechanism +- // if not already started. The client creates a .attach_pid<pid> file in the +- // target VM's working directory (or /tmp), and the SIGQUIT handler checks +- // for the file. +- private File createAttachFile(int pid) throws IOException { +- String fn = ".attach_pid" + pid; +- String path = "/proc/" + pid + "/cwd/" + fn; +- File f = new File(path); +- try { +- f.createNewFile(); +- } catch (IOException x) { +- path = "/tmp/" + fn; +- f = new File(path); +- f.createNewFile(); - } -- // To avoid re-checking if the VM if attachable, we check if the descriptor -- // is for a hotspot VM - these descriptors are created by the listVirtualMachines -- // implementation which only returns a list of attachable VMs. -- if (vmd instanceof HotSpotVirtualMachineDescriptor) { -- assert ((HotSpotVirtualMachineDescriptor)vmd).isAttachable(); -- checkAttachPermission(); -- return new BsdVirtualMachine(this, vmd.id()); -- } else { -- return attachVirtualMachine(vmd.id()); -- } -+ throw new AttachNotSupportedException("Attach not yet supported on BSD"); - } +- return f; +- } +- + /* + * Write/sends the given to the target VM. String is transmitted in + * UTF-8 encoding. +@@ -318,12 +277,6 @@ public class BsdVirtualMachine extends H + + //-- native methods + +- static native boolean isBsdThreads(); +- +- static native int getBsdThreadsManager(int pid) throws IOException; +- +- static native void sendQuitToChildrenOf(int pid) throws IOException; +- + static native void sendQuitTo(int pid) throws IOException; + + static native void checkPermissions(String path) throws IOException; +@@ -338,8 +291,9 @@ public class BsdVirtualMachine extends H + static native void write(int fd, byte buf[], int off, int bufLen) throws IOException; + ++ static native void createAttachFile(String path); ++ + static { + System.loadLibrary("attach"); +- isBsdThreads = isBsdThreads(); + } } -diff -upr ../orig/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c ./jdk/src/solaris/demo/jvmti/hprof/hprof_md.c ---- ../orig/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/demo/jvmti/hprof/hprof_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c ./jdk/src/solaris/demo/jvmti/hprof/hprof_md.c +--- ../orig/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c 2009-04-24 03:34:33.000000000 -0400 ++++ ./jdk/src/solaris/demo/jvmti/hprof/hprof_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -33,7 +33,7 @@ #include <sys/stat.h> #include <fcntl.h> @@ -10043,9 +12324,9 @@ diff -upr ../orig/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c ./jdk/src/solaris/ addr = (void*)&Agent_OnLoad; #else /* Just using &Agent_OnLoad will get the first external symbol with -diff -upr ../orig/jdk/src/solaris/hpi/include/interrupt.h ./jdk/src/solaris/hpi/include/interrupt.h ---- ../orig/jdk/src/solaris/hpi/include/interrupt.h 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/include/interrupt.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/include/interrupt.h ./jdk/src/solaris/hpi/include/interrupt.h +--- ../orig/jdk/src/solaris/hpi/include/interrupt.h 2009-04-24 03:34:33.000000000 -0400 ++++ ./jdk/src/solaris/hpi/include/interrupt.h 2009-05-14 23:41:34.000000000 -0400 @@ -75,7 +75,7 @@ void intrDispatch(int interrupt, void *s * N_INTERRUPTS - The number of interrupt channels. These * are numbered from 0 to (N_INTERRUPTS - 1). @@ -10066,9 +12347,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/include/interrupt.h ./jdk/src/solaris/hpi/ #ifdef SA_SIGINFO /* Thread implementation dependent interrupt dispatcher. */ void intrDispatchMD(int sig, siginfo_t *info, void *uc); -diff -upr ../orig/jdk/src/solaris/hpi/include/largefile.h ./jdk/src/solaris/hpi/include/largefile.h ---- ../orig/jdk/src/solaris/hpi/include/largefile.h 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/include/largefile.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/include/largefile.h ./jdk/src/solaris/hpi/include/largefile.h +--- ../orig/jdk/src/solaris/hpi/include/largefile.h 2009-04-24 03:34:33.000000000 -0400 ++++ ./jdk/src/solaris/hpi/include/largefile.h 2009-05-14 23:41:34.000000000 -0400 @@ -34,6 +34,10 @@ #include "largefile_linux.h" #endif @@ -10080,9 +12361,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/include/largefile.h ./jdk/src/solaris/hpi/ /* * Prototypes for wrappers that we define. These wrapper functions * are low-level I/O routines that will use 64 bit versions if -diff -upr ../orig/jdk/src/solaris/hpi/include/largefile_bsd.h ./jdk/src/solaris/hpi/include/largefile_bsd.h ---- ../orig/jdk/src/solaris/hpi/include/largefile_bsd.h 2009-05-04 18:32:16.000000000 -0400 -+++ ./jdk/src/solaris/hpi/include/largefile_bsd.h 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/include/largefile_bsd.h ./jdk/src/solaris/hpi/include/largefile_bsd.h +--- ../orig/jdk/src/solaris/hpi/include/largefile_bsd.h 2009-05-14 23:40:17.000000000 -0400 ++++ ./jdk/src/solaris/hpi/include/largefile_bsd.h 2009-05-14 23:41:34.000000000 -0400 @@ -23,14 +23,28 @@ * have any questions. */ @@ -10119,9 +12400,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/include/largefile_bsd.h ./jdk/src/solaris/ +#define pwrite64 pwrite + +#endif /* _JAVASOFT_BSD_LARGEFILE_SUPPORT_H_ */ -diff -upr ../orig/jdk/src/solaris/hpi/native_threads/include/threads_md.h ./jdk/src/solaris/hpi/native_threads/include/threads_md.h ---- ../orig/jdk/src/solaris/hpi/native_threads/include/threads_md.h 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/native_threads/include/threads_md.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/native_threads/include/threads_md.h ./jdk/src/solaris/hpi/native_threads/include/threads_md.h +--- ../orig/jdk/src/solaris/hpi/native_threads/include/threads_md.h 2009-04-24 03:34:33.000000000 -0400 ++++ ./jdk/src/solaris/hpi/native_threads/include/threads_md.h 2009-05-14 23:41:34.000000000 -0400 @@ -36,6 +36,8 @@ #define N_TRACED_REGS 12 #elif i386 @@ -10168,9 +12449,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/native_threads/include/threads_md.h ./jdk/ #ifdef __linux__ extern thread_key_t intrJmpbufkey; -diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/condvar_md.c ./jdk/src/solaris/hpi/native_threads/src/condvar_md.c ---- ../orig/jdk/src/solaris/hpi/native_threads/src/condvar_md.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/native_threads/src/condvar_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/native_threads/src/condvar_md.c ./jdk/src/solaris/hpi/native_threads/src/condvar_md.c +--- ../orig/jdk/src/solaris/hpi/native_threads/src/condvar_md.c 2009-04-24 03:34:33.000000000 -0400 ++++ ./jdk/src/solaris/hpi/native_threads/src/condvar_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -58,7 +58,7 @@ condvarDestroy(condvar_t *condvar) { int err; @@ -10180,9 +12461,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/condvar_md.c ./jdk/src/ err = pthread_cond_destroy((cond_t *) &condvar->cond); #else err = cond_destroy((cond_t *) condvar); -diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/monitor_md.c ./jdk/src/solaris/hpi/native_threads/src/monitor_md.c ---- ../orig/jdk/src/solaris/hpi/native_threads/src/monitor_md.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/native_threads/src/monitor_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/native_threads/src/monitor_md.c ./jdk/src/solaris/hpi/native_threads/src/monitor_md.c +--- ../orig/jdk/src/solaris/hpi/native_threads/src/monitor_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/hpi/native_threads/src/monitor_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -147,7 +147,7 @@ sysMonitorEnter(sys_thread_t *self, sys_ mid->monitor_owner = self; mid->entry_count = 1; @@ -10192,9 +12473,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/monitor_md.c ./jdk/src/ if (mid->monitor_owner == self) { mid->entry_count++; return SYS_OK; -diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/sys_api_td.c ./jdk/src/solaris/hpi/native_threads/src/sys_api_td.c ---- ../orig/jdk/src/solaris/hpi/native_threads/src/sys_api_td.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/native_threads/src/sys_api_td.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/native_threads/src/sys_api_td.c ./jdk/src/solaris/hpi/native_threads/src/sys_api_td.c +--- ../orig/jdk/src/solaris/hpi/native_threads/src/sys_api_td.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/hpi/native_threads/src/sys_api_td.c 2009-05-14 23:41:34.000000000 -0400 @@ -39,6 +39,10 @@ #include <sys/ioctl.h> #endif @@ -10217,9 +12498,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/sys_api_td.c ./jdk/src/ #ifdef NO_INTERRUPTIBLE_IO #undef CLOSEIO #else -diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/threads_bsd.c ./jdk/src/solaris/hpi/native_threads/src/threads_bsd.c ---- ../orig/jdk/src/solaris/hpi/native_threads/src/threads_bsd.c 2009-05-04 18:32:16.000000000 -0400 -+++ ./jdk/src/solaris/hpi/native_threads/src/threads_bsd.c 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/native_threads/src/threads_bsd.c ./jdk/src/solaris/hpi/native_threads/src/threads_bsd.c +--- ../orig/jdk/src/solaris/hpi/native_threads/src/threads_bsd.c 2009-05-14 23:40:17.000000000 -0400 ++++ ./jdk/src/solaris/hpi/native_threads/src/threads_bsd.c 2009-05-14 23:41:34.000000000 -0400 @@ -23,79 +23,44 @@ * have any questions. */ @@ -11095,9 +13376,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/threads_bsd.c ./jdk/src - - print_lwps(); } -diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/threads_md.c ./jdk/src/solaris/hpi/native_threads/src/threads_md.c ---- ../orig/jdk/src/solaris/hpi/native_threads/src/threads_md.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/native_threads/src/threads_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/native_threads/src/threads_md.c ./jdk/src/solaris/hpi/native_threads/src/threads_md.c +--- ../orig/jdk/src/solaris/hpi/native_threads/src/threads_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/hpi/native_threads/src/threads_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -54,6 +54,10 @@ extern int InitializeIO(rlim_t limit); #error That can NOT possibly be right. #endif @@ -11179,9 +13460,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/native_threads/src/threads_md.c ./jdk/src/ info.isMP = (cpus < 0) ? 1 : (cpus > 1); info.name = "native threads"; -diff -upr ../orig/jdk/src/solaris/hpi/src/linker_md.c ./jdk/src/solaris/hpi/src/linker_md.c ---- ../orig/jdk/src/solaris/hpi/src/linker_md.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/src/linker_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/src/linker_md.c ./jdk/src/solaris/hpi/src/linker_md.c +--- ../orig/jdk/src/solaris/hpi/src/linker_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/hpi/src/linker_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -44,11 +44,19 @@ #include "threads_md.h" #endif @@ -11248,9 +13529,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/src/linker_md.c ./jdk/src/solaris/hpi/src/ #endif /* * This is a bit of bulletproofing to catch the commonly occurring -diff -upr ../orig/jdk/src/solaris/hpi/src/memory_md.c ./jdk/src/solaris/hpi/src/memory_md.c ---- ../orig/jdk/src/solaris/hpi/src/memory_md.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/src/memory_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/src/memory_md.c ./jdk/src/solaris/hpi/src/memory_md.c +--- ../orig/jdk/src/solaris/hpi/src/memory_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/hpi/src/memory_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -50,12 +50,24 @@ #include <stdlib.h> #include <stdio.h> /* For perror() */ @@ -11340,9 +13621,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/src/memory_md.c ./jdk/src/solaris/hpi/src/ ret = committedAddr; #else ret = requestedAddr; -diff -upr ../orig/jdk/src/solaris/hpi/src/system_md.c ./jdk/src/solaris/hpi/src/system_md.c ---- ../orig/jdk/src/solaris/hpi/src/system_md.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/hpi/src/system_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/hpi/src/system_md.c ./jdk/src/solaris/hpi/src/system_md.c +--- ../orig/jdk/src/solaris/hpi/src/system_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/hpi/src/system_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -41,6 +41,7 @@ #include <dlfcn.h> @@ -11396,9 +13677,9 @@ diff -upr ../orig/jdk/src/solaris/hpi/src/system_md.c ./jdk/src/solaris/hpi/src/ fd = open64_w(path, oflag, mode); if (delete != 0) { unlink(path); -diff -upr ../orig/jdk/src/solaris/instrument/EncodingSupport_md.c ./jdk/src/solaris/instrument/EncodingSupport_md.c ---- ../orig/jdk/src/solaris/instrument/EncodingSupport_md.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/instrument/EncodingSupport_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/instrument/EncodingSupport_md.c ./jdk/src/solaris/instrument/EncodingSupport_md.c +--- ../orig/jdk/src/solaris/instrument/EncodingSupport_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/instrument/EncodingSupport_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -28,7 +28,10 @@ #include <string.h> #include <ctype.h> @@ -11428,9 +13709,9 @@ diff -upr ../orig/jdk/src/solaris/instrument/EncodingSupport_md.c ./jdk/src/sola /* Open conversion descriptors */ iconvToPlatform = iconv_open(codeset, "UTF-8"); -diff -upr ../orig/jdk/src/solaris/javavm/export/jvm_md.h ./jdk/src/solaris/javavm/export/jvm_md.h ---- ../orig/jdk/src/solaris/javavm/export/jvm_md.h 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/javavm/export/jvm_md.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/javavm/export/jvm_md.h ./jdk/src/solaris/javavm/export/jvm_md.h +--- ../orig/jdk/src/solaris/javavm/export/jvm_md.h 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/javavm/export/jvm_md.h 2009-05-14 23:41:34.000000000 -0400 @@ -39,7 +39,14 @@ #define JNI_ONUNLOAD_SYMBOLS {"JNI_OnUnload"} @@ -11455,9 +13736,9 @@ diff -upr ../orig/jdk/src/solaris/javavm/export/jvm_md.h ./jdk/src/solaris/javav /* Signals */ -diff -upr ../orig/jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c ./jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c ---- ../orig/jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c 2009-01-27 15:45:49.000000000 -0500 -+++ ./jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c ./jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c +--- ../orig/jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -32,10 +32,16 @@ #include <sys/types.h> @@ -11620,9 +13901,9 @@ diff -upr ../orig/jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_ } JNIEXPORT jlong JNICALL -diff -upr ../orig/jdk/src/solaris/native/java/io/UnixFileSystem_md.c ./jdk/src/solaris/native/java/io/UnixFileSystem_md.c ---- ../orig/jdk/src/solaris/native/java/io/UnixFileSystem_md.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/io/UnixFileSystem_md.c 2009-05-06 10:46:09.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/io/UnixFileSystem_md.c ./jdk/src/solaris/native/java/io/UnixFileSystem_md.c +--- ../orig/jdk/src/solaris/native/java/io/UnixFileSystem_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/io/UnixFileSystem_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -41,6 +41,11 @@ #include "java_io_FileSystem.h" #include "java_io_UnixFileSystem.h" @@ -11678,9 +13959,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/io/UnixFileSystem_md.c ./jdk/src/s struct stat sb; if (stat(path, &sb) == 0) { -diff -upr ../orig/jdk/src/solaris/native/java/io/canonicalize_md.c ./jdk/src/solaris/native/java/io/canonicalize_md.c ---- ../orig/jdk/src/solaris/native/java/io/canonicalize_md.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/io/canonicalize_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/io/canonicalize_md.c ./jdk/src/solaris/native/java/io/canonicalize_md.c +--- ../orig/jdk/src/solaris/native/java/io/canonicalize_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/io/canonicalize_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -33,7 +33,9 @@ #include <sys/stat.h> #include <errno.h> @@ -11691,9 +13972,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/io/canonicalize_md.c ./jdk/src/sol /* Note: The comments in this file use the terminology -diff -upr ../orig/jdk/src/solaris/native/java/io/io_util_md.c ./jdk/src/solaris/native/java/io/io_util_md.c ---- ../orig/jdk/src/solaris/native/java/io/io_util_md.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/io/io_util_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/io/io_util_md.c ./jdk/src/solaris/native/java/io/io_util_md.c +--- ../orig/jdk/src/solaris/native/java/io/io_util_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/io/io_util_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -36,7 +36,7 @@ fileOpen(JNIEnv *env, jobject this, jstr WITH_PLATFORM_STRING(env, path, ps) { FD fd; @@ -11703,9 +13984,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/io/io_util_md.c ./jdk/src/solaris/ /* Remove trailing slashes, since the kernel won't */ char *p = (char *)ps + strlen(ps) - 1; while ((p > ps) && (*p == '/')) -diff -upr ../orig/jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c ./jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c ---- ../orig/jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c ./jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c +--- ../orig/jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -28,6 +28,11 @@ #include "jni.h" #include "jni_util.h" @@ -11746,9 +14027,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c ./jdk jbyteArray var, val; const char * valBeg = varEnd + 1; jsize varLength = varEnd - environ[i]; -diff -upr ../orig/jdk/src/solaris/native/java/lang/UNIXProcess_md.c ./jdk/src/solaris/native/java/lang/UNIXProcess_md.c ---- ../orig/jdk/src/solaris/native/java/lang/UNIXProcess_md.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/lang/UNIXProcess_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/lang/UNIXProcess_md.c ./jdk/src/solaris/native/java/lang/UNIXProcess_md.c +--- ../orig/jdk/src/solaris/native/java/lang/UNIXProcess_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/lang/UNIXProcess_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -40,7 +40,11 @@ #include <stdlib.h> #include <sys/types.h> @@ -11951,9 +14232,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/lang/UNIXProcess_md.c ./jdk/src/so /* Close the parent sides of the pipe. Give the child sides of the pipes the right fileno's. Closing pipe fds here is redundant, since closeDescriptors() -diff -upr ../orig/jdk/src/solaris/native/java/lang/java_props_md.c ./jdk/src/solaris/native/java/lang/java_props_md.c ---- ../orig/jdk/src/solaris/native/java/lang/java_props_md.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/lang/java_props_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/lang/java_props_md.c ./jdk/src/solaris/native/java/lang/java_props_md.c +--- ../orig/jdk/src/solaris/native/java/lang/java_props_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/lang/java_props_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -23,7 +23,7 @@ * have any questions. */ @@ -12087,9 +14368,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/lang/java_props_md.c ./jdk/src/sol return &sprops; } -diff -upr ../orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c ./jdk/src/solaris/native/java/net/Inet4AddressImpl.c ---- ../orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/net/Inet4AddressImpl.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c ./jdk/src/solaris/native/java/net/Inet4AddressImpl.c +--- ../orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/net/Inet4AddressImpl.c 2009-05-14 23:41:34.000000000 -0400 @@ -35,17 +35,293 @@ #include <stdlib.h> #include <ctype.h> @@ -12446,9 +14727,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c ./jdk/src/s #define SET_NONBLOCKING(fd) { \ int flags = fcntl(fd, F_GETFL); \ flags |= O_NONBLOCK; \ -diff -upr ../orig/jdk/src/solaris/native/java/net/Inet6AddressImpl.c ./jdk/src/solaris/native/java/net/Inet6AddressImpl.c ---- ../orig/jdk/src/solaris/native/java/net/Inet6AddressImpl.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/net/Inet6AddressImpl.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/net/Inet6AddressImpl.c ./jdk/src/solaris/native/java/net/Inet6AddressImpl.c +--- ../orig/jdk/src/solaris/native/java/net/Inet6AddressImpl.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/net/Inet6AddressImpl.c 2009-05-14 23:41:34.000000000 -0400 @@ -32,6 +32,9 @@ #include <strings.h> #include <stdlib.h> @@ -12498,9 +14779,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/net/Inet6AddressImpl.c ./jdk/src/s } return (*env)->NewStringUTF(env, hostname); } -diff -upr ../orig/jdk/src/solaris/native/java/net/NetworkInterface.c ./jdk/src/solaris/native/java/net/NetworkInterface.c ---- ../orig/jdk/src/solaris/native/java/net/NetworkInterface.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/net/NetworkInterface.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/net/NetworkInterface.c ./jdk/src/solaris/native/java/net/NetworkInterface.c +--- ../orig/jdk/src/solaris/native/java/net/NetworkInterface.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/net/NetworkInterface.c 2009-05-14 23:41:34.000000000 -0400 @@ -23,13 +23,13 @@ * have any questions. */ @@ -12777,9 +15058,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/net/NetworkInterface.c ./jdk/src/s memset((char *) &if2, 0, sizeof(if2)); strcpy(if2.ifr_name, name_utf); -diff -upr ../orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c ---- ../orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c +--- ../orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c 2009-05-14 23:41:34.000000000 -0400 @@ -23,12 +23,12 @@ * have any questions. */ @@ -12886,9 +15167,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c ./jd } } } -diff -upr ../orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c ./jdk/src/solaris/native/java/net/PlainSocketImpl.c ---- ../orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/net/PlainSocketImpl.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c ./jdk/src/solaris/native/java/net/PlainSocketImpl.c +--- ../orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/net/PlainSocketImpl.c 2009-05-14 23:41:34.000000000 -0400 @@ -528,9 +528,11 @@ Java_java_net_PlainSocketImpl_socketConn if (connect_rv == JVM_IO_INTR) { JNU_ThrowByName(env, JNU_JAVAIOPKG "InterruptedIOException", @@ -12901,9 +15182,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c ./jdk/src/so } else if (errno == ECONNREFUSED) { NET_ThrowByNameWithLastError(env, JNU_JAVANETPKG "ConnectException", "Connection refused"); -diff -upr ../orig/jdk/src/solaris/native/java/net/bsd_close.c ./jdk/src/solaris/native/java/net/bsd_close.c ---- ../orig/jdk/src/solaris/native/java/net/bsd_close.c 2009-05-04 18:32:16.000000000 -0400 -+++ ./jdk/src/solaris/native/java/net/bsd_close.c 2009-05-04 17:37:15.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/net/bsd_close.c ./jdk/src/solaris/native/java/net/bsd_close.c +--- ../orig/jdk/src/solaris/native/java/net/bsd_close.c 2009-05-14 23:40:17.000000000 -0400 ++++ ./jdk/src/solaris/native/java/net/bsd_close.c 2009-05-14 23:41:34.000000000 -0400 @@ -57,7 +57,7 @@ typedef struct { /* * Signal to unblock thread @@ -12913,9 +15194,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/net/bsd_close.c ./jdk/src/solaris/ /* * The fd table and the number of file descriptors -diff -upr ../orig/jdk/src/solaris/native/java/net/net_util_md.c ./jdk/src/solaris/native/java/net/net_util_md.c ---- ../orig/jdk/src/solaris/native/java/net/net_util_md.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/net/net_util_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/net/net_util_md.c ./jdk/src/solaris/native/java/net/net_util_md.c +--- ../orig/jdk/src/solaris/native/java/net/net_util_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/net/net_util_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -34,6 +34,15 @@ #include <stdlib.h> #include <dlfcn.h> @@ -13086,9 +15367,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/net/net_util_md.c ./jdk/src/solari return setsockopt(fd, level, opt, arg, len); } -diff -upr ../orig/jdk/src/solaris/native/java/net/net_util_md.h ./jdk/src/solaris/native/java/net/net_util_md.h ---- ../orig/jdk/src/solaris/native/java/net/net_util_md.h 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/net/net_util_md.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/net/net_util_md.h ./jdk/src/solaris/native/java/net/net_util_md.h +--- ../orig/jdk/src/solaris/native/java/net/net_util_md.h 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/net/net_util_md.h 2009-05-14 23:41:34.000000000 -0400 @@ -37,7 +37,7 @@ #endif @@ -13098,9 +15379,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/net/net_util_md.h ./jdk/src/solari extern int NET_Timeout(int s, long timeout); extern int NET_Read(int s, void* buf, size_t len); extern int NET_RecvFrom(int s, void *buf, int len, unsigned int flags, -diff -upr ../orig/jdk/src/solaris/native/java/nio/MappedByteBuffer.c ./jdk/src/solaris/native/java/nio/MappedByteBuffer.c ---- ../orig/jdk/src/solaris/native/java/nio/MappedByteBuffer.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/nio/MappedByteBuffer.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/nio/MappedByteBuffer.c ./jdk/src/solaris/native/java/nio/MappedByteBuffer.c +--- ../orig/jdk/src/solaris/native/java/nio/MappedByteBuffer.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/nio/MappedByteBuffer.c 2009-05-14 23:41:34.000000000 -0400 @@ -38,7 +38,11 @@ Java_java_nio_MappedByteBuffer_isLoaded0 jlong address, jlong len) { @@ -13125,9 +15406,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/nio/MappedByteBuffer.c ./jdk/src/s unsigned long lAddress = address; jlong offset = lAddress % pageSize; -diff -upr ../orig/jdk/src/solaris/native/java/util/FileSystemPreferences.c ./jdk/src/solaris/native/java/util/FileSystemPreferences.c ---- ../orig/jdk/src/solaris/native/java/util/FileSystemPreferences.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/util/FileSystemPreferences.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/util/FileSystemPreferences.c ./jdk/src/solaris/native/java/util/FileSystemPreferences.c +--- ../orig/jdk/src/solaris/native/java/util/FileSystemPreferences.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/util/FileSystemPreferences.c 2009-05-14 23:41:34.000000000 -0400 @@ -47,8 +47,11 @@ Java_java_util_prefs_FileSystemPreferenc return (jint) result; } @@ -13165,9 +15446,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/util/FileSystemPreferences.c ./jdk if (rc < 0) { close(fd); -diff -upr ../orig/jdk/src/solaris/native/java/util/TimeZone_md.c ./jdk/src/solaris/native/java/util/TimeZone_md.c ---- ../orig/jdk/src/solaris/native/java/util/TimeZone_md.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/java/util/TimeZone_md.c 2009-05-05 17:44:22.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/java/util/TimeZone_md.c ./jdk/src/solaris/native/java/util/TimeZone_md.c +--- ../orig/jdk/src/solaris/native/java/util/TimeZone_md.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/java/util/TimeZone_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -31,7 +31,7 @@ #include <errno.h> #include <stddef.h> @@ -13311,9 +15592,9 @@ diff -upr ../orig/jdk/src/solaris/native/java/util/TimeZone_md.c ./jdk/src/solar sprintf(buf, (const char *)"GMT%c%02d:%02d", sign, (int)(offset/3600), (int)((offset%3600)/60)); return strdup(buf); -diff -upr ../orig/jdk/src/solaris/native/sun/awt/CUPSfuncs.c ./jdk/src/solaris/native/sun/awt/CUPSfuncs.c ---- ../orig/jdk/src/solaris/native/sun/awt/CUPSfuncs.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/CUPSfuncs.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/CUPSfuncs.c ./jdk/src/solaris/native/sun/awt/CUPSfuncs.c +--- ../orig/jdk/src/solaris/native/sun/awt/CUPSfuncs.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/CUPSfuncs.c 2009-05-14 23:41:34.000000000 -0400 @@ -25,6 +25,7 @@ #include <jni.h> @@ -13336,9 +15617,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/CUPSfuncs.c ./jdk/src/solaris/n if (handle == NULL) { return JNI_FALSE; } -diff -upr ../orig/jdk/src/solaris/native/sun/awt/VDrawingArea.c ./jdk/src/solaris/native/sun/awt/VDrawingArea.c ---- ../orig/jdk/src/solaris/native/sun/awt/VDrawingArea.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/VDrawingArea.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/VDrawingArea.c ./jdk/src/solaris/native/sun/awt/VDrawingArea.c +--- ../orig/jdk/src/solaris/native/sun/awt/VDrawingArea.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/VDrawingArea.c 2009-05-14 23:41:34.000000000 -0400 @@ -31,7 +31,11 @@ #endif /* !HEADLESS */ @@ -13351,9 +15632,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/VDrawingArea.c ./jdk/src/solari #ifdef __linux__ /* XXX: Shouldn't be necessary. */ -diff -upr ../orig/jdk/src/solaris/native/sun/awt/X11Color.c ./jdk/src/solaris/native/sun/awt/X11Color.c ---- ../orig/jdk/src/solaris/native/sun/awt/X11Color.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/X11Color.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/X11Color.c ./jdk/src/solaris/native/sun/awt/X11Color.c +--- ../orig/jdk/src/solaris/native/sun/awt/X11Color.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/X11Color.c 2009-05-14 23:41:34.000000000 -0400 @@ -33,7 +33,9 @@ #include <math.h> #include <sys/time.h> @@ -13364,9 +15645,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/X11Color.c ./jdk/src/solaris/na #ifndef HEADLESS #include <X11/Xlib.h> #include <X11/Xatom.h> -diff -upr ../orig/jdk/src/solaris/native/sun/awt/XDrawingArea.c ./jdk/src/solaris/native/sun/awt/XDrawingArea.c ---- ../orig/jdk/src/solaris/native/sun/awt/XDrawingArea.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/XDrawingArea.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/XDrawingArea.c ./jdk/src/solaris/native/sun/awt/XDrawingArea.c +--- ../orig/jdk/src/solaris/native/sun/awt/XDrawingArea.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/XDrawingArea.c 2009-05-14 23:41:34.000000000 -0400 @@ -30,7 +30,11 @@ #include <Xm/XmP.h> @@ -13379,9 +15660,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/XDrawingArea.c ./jdk/src/solari #ifdef DEBUG #include <jvm.h> /* To get jio_fprintf() */ -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_Font.c ./jdk/src/solaris/native/sun/awt/awt_Font.c ---- ../orig/jdk/src/solaris/native/sun/awt/awt_Font.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_Font.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_Font.c ./jdk/src/solaris/native/sun/awt/awt_Font.c +--- ../orig/jdk/src/solaris/native/sun/awt/awt_Font.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_Font.c 2009-05-14 23:41:34.000000000 -0400 @@ -334,7 +334,7 @@ loadFont(Display * display, char *name, if (strcmp(style, "regular") == 0) { altstyle = "roman"; @@ -13391,9 +15672,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_Font.c ./jdk/src/solaris/na if (!strcmp(family, "lucidasans")) { family = "lucida"; } -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c ./jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c ---- ../orig/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c ./jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c +--- ../orig/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c 2009-05-14 23:41:34.000000000 -0400 @@ -40,6 +40,7 @@ #include <jni.h> #include <jni_util.h> @@ -13518,9 +15799,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c ./jdk/src/sol if (pLibRandR == NULL) { J2dRlsTraceLn(J2D_TRACE_ERROR, "X11GD_InitXrandrFuncs: Could not open libXrandr.so.2"); -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c ./jdk/src/solaris/native/sun/awt/awt_InputMethod.c ---- ../orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_InputMethod.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c ./jdk/src/solaris/native/sun/awt/awt_InputMethod.c +--- ../orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_InputMethod.c 2009-05-14 23:41:34.000000000 -0400 @@ -69,7 +69,7 @@ static void PreeditDrawCallback(XIC, XPo XIMPreeditDrawCallbackStruct *); static void PreeditCaretCallback(XIC, XPointer, @@ -13760,9 +16041,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c ./jdk/src/sol AWT_LOCK(); adjustStatusWindow(window); AWT_UNLOCK(); -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c ./jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c ---- ../orig/jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c ./jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c +--- ../orig/jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c 2009-05-14 23:41:34.000000000 -0400 @@ -260,7 +260,11 @@ AWT_OnLoad(JavaVM *vm, void *reserved) } } @@ -13775,9 +16056,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c ./jdk/src/sol JNU_CallStaticMethodByName(env, NULL, "java/lang/System", "load", "(Ljava/lang/String;)V", -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_MToolkit.c ./jdk/src/solaris/native/sun/awt/awt_MToolkit.c ---- ../orig/jdk/src/solaris/native/sun/awt/awt_MToolkit.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_MToolkit.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_MToolkit.c ./jdk/src/solaris/native/sun/awt/awt_MToolkit.c +--- ../orig/jdk/src/solaris/native/sun/awt/awt_MToolkit.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_MToolkit.c 2009-05-14 23:41:34.000000000 -0400 @@ -63,8 +63,9 @@ extern JavaVM *jvm; @@ -13798,9 +16079,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_MToolkit.c ./jdk/src/solari statusWindowEventHandler(xev); #endif xembed_eventHandler(&xev); -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_Mlib.c ./jdk/src/solaris/native/sun/awt/awt_Mlib.c ---- ../orig/jdk/src/solaris/native/sun/awt/awt_Mlib.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_Mlib.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_Mlib.c ./jdk/src/solaris/native/sun/awt/awt_Mlib.c +--- ../orig/jdk/src/solaris/native/sun/awt/awt_Mlib.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_Mlib.c 2009-05-14 23:41:34.000000000 -0400 @@ -32,6 +32,7 @@ #include <dlfcn.h> #include "jni.h" @@ -13823,9 +16104,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_Mlib.c ./jdk/src/solaris/na } if (handle == NULL) { -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_Robot.c ./jdk/src/solaris/native/sun/awt/awt_Robot.c ---- ../orig/jdk/src/solaris/native/sun/awt/awt_Robot.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_Robot.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_Robot.c ./jdk/src/solaris/native/sun/awt/awt_Robot.c +--- ../orig/jdk/src/solaris/native/sun/awt/awt_Robot.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_Robot.c 2009-05-14 23:41:34.000000000 -0400 @@ -45,7 +45,7 @@ #include "wsutils.h" #include "list.h" @@ -13835,9 +16116,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_Robot.c ./jdk/src/solaris/n #include <sys/socket.h> #endif -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_util.h ./jdk/src/solaris/native/sun/awt/awt_util.h ---- ../orig/jdk/src/solaris/native/sun/awt/awt_util.h 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_util.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_util.h ./jdk/src/solaris/native/sun/awt/awt_util.h +--- ../orig/jdk/src/solaris/native/sun/awt/awt_util.h 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_util.h 2009-05-14 23:41:34.000000000 -0400 @@ -187,15 +187,20 @@ JNU_GetCharField(JNIEnv *env, jobject se #ifdef __solaris__ extern Widget awt_util_getXICStatusAreaWindow(Widget w); @@ -13860,9 +16141,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_util.h ./jdk/src/solaris/na typedef struct _XmImRefRec { Cardinal num_refs; /* Number of referencing widgets. */ Cardinal max_refs; /* Maximum length of refs array. */ -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_wm.c ./jdk/src/solaris/native/sun/awt/awt_wm.c ---- ../orig/jdk/src/solaris/native/sun/awt/awt_wm.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_wm.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_wm.c ./jdk/src/solaris/native/sun/awt/awt_wm.c +--- ../orig/jdk/src/solaris/native/sun/awt/awt_wm.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_wm.c 2009-05-14 23:41:34.000000000 -0400 @@ -121,12 +121,19 @@ static Atom XA_KWM_WIN_ICONIFIED; static Atom XA_KWM_WIN_MAXIMIZED; @@ -13960,9 +16241,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_wm.c ./jdk/src/solaris/nati awt_wmgr = OPENLOOK_WM; } else { -diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_wm.h ./jdk/src/solaris/native/sun/awt/awt_wm.h ---- ../orig/jdk/src/solaris/native/sun/awt/awt_wm.h 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/awt_wm.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/awt_wm.h ./jdk/src/solaris/native/sun/awt/awt_wm.h +--- ../orig/jdk/src/solaris/native/sun/awt/awt_wm.h 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/awt_wm.h 2009-05-14 23:41:34.000000000 -0400 @@ -45,7 +45,10 @@ enum wmgr_t { KDE2_WM, SAWFISH_WM, @@ -13975,9 +16256,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/awt_wm.h ./jdk/src/solaris/nati }; extern void awt_wm_init(void); -diff -upr ../orig/jdk/src/solaris/native/sun/awt/extutil.h ./jdk/src/solaris/native/sun/awt/extutil.h ---- ../orig/jdk/src/solaris/native/sun/awt/extutil.h 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/extutil.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/extutil.h ./jdk/src/solaris/native/sun/awt/extutil.h +--- ../orig/jdk/src/solaris/native/sun/awt/extutil.h 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/extutil.h 2009-05-14 23:41:34.000000000 -0400 @@ -58,7 +58,7 @@ in this Software without prior written a */ /* $XFree86: xc/include/extensions/extutil.h,v 1.5 2001/01/17 17:53:20 dawes Exp $ */ @@ -13993,9 +16274,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/extutil.h ./jdk/src/solaris/nat -#endif /* __linux__ */ +#endif /* __linux__ || _ALLBSD_SOURCE */ -diff -upr ../orig/jdk/src/solaris/native/sun/awt/fontpath.c ./jdk/src/solaris/native/sun/awt/fontpath.c ---- ../orig/jdk/src/solaris/native/sun/awt/fontpath.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/fontpath.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/fontpath.c ./jdk/src/solaris/native/sun/awt/fontpath.c +--- ../orig/jdk/src/solaris/native/sun/awt/fontpath.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/fontpath.c 2009-05-14 23:41:34.000000000 -0400 @@ -23,7 +23,7 @@ * have any questions. */ @@ -14153,9 +16434,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/fontpath.c ./jdk/src/solaris/na if (libfontconfig == NULL) { return NULL; } -diff -upr ../orig/jdk/src/solaris/native/sun/awt/gtk2_interface.c ./jdk/src/solaris/native/sun/awt/gtk2_interface.c ---- ../orig/jdk/src/solaris/native/sun/awt/gtk2_interface.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/gtk2_interface.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/gtk2_interface.c ./jdk/src/solaris/native/sun/awt/gtk2_interface.c +--- ../orig/jdk/src/solaris/native/sun/awt/gtk2_interface.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/gtk2_interface.c 2009-05-14 23:41:34.000000000 -0400 @@ -30,8 +30,9 @@ #include <string.h> #include "gtk2_interface.h" @@ -14167,9 +16448,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/gtk2_interface.c ./jdk/src/sola #define G_TYPE_INVALID G_TYPE_MAKE_FUNDAMENTAL (0) #define G_TYPE_NONE G_TYPE_MAKE_FUNDAMENTAL (1) -diff -upr ../orig/jdk/src/solaris/native/sun/awt/list.c ./jdk/src/solaris/native/sun/awt/list.c ---- ../orig/jdk/src/solaris/native/sun/awt/list.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/list.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/list.c ./jdk/src/solaris/native/sun/awt/list.c +--- ../orig/jdk/src/solaris/native/sun/awt/list.c 2009-04-24 03:34:34.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/list.c 2009-05-14 23:41:34.000000000 -0400 @@ -66,7 +66,11 @@ from the X Consortium. ----------------------------------------------------------------------- **/ @@ -14182,9 +16463,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/list.c ./jdk/src/solaris/native #include "list.h" -diff -upr ../orig/jdk/src/solaris/native/sun/awt/robot_common.c ./jdk/src/solaris/native/sun/awt/robot_common.c ---- ../orig/jdk/src/solaris/native/sun/awt/robot_common.c 2009-01-27 15:45:50.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/awt/robot_common.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/awt/robot_common.c ./jdk/src/solaris/native/sun/awt/robot_common.c +--- ../orig/jdk/src/solaris/native/sun/awt/robot_common.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/awt/robot_common.c 2009-05-14 23:41:34.000000000 -0400 @@ -27,6 +27,9 @@ #error This file should not be included in headless library #endif @@ -14195,9 +16476,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/awt/robot_common.c ./jdk/src/solari #include "robot_common.h" /* -diff -upr ../orig/jdk/src/solaris/native/sun/font/X11FontScaler.c ./jdk/src/solaris/native/sun/font/X11FontScaler.c ---- ../orig/jdk/src/solaris/native/sun/font/X11FontScaler.c 2009-01-27 15:45:51.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/font/X11FontScaler.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/font/X11FontScaler.c ./jdk/src/solaris/native/sun/font/X11FontScaler.c +--- ../orig/jdk/src/solaris/native/sun/font/X11FontScaler.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/font/X11FontScaler.c 2009-05-14 23:41:34.000000000 -0400 @@ -32,7 +32,11 @@ * into X11FontScaler_md.c, which is compiled into another library. */ @@ -14210,9 +16491,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/font/X11FontScaler.c ./jdk/src/sola #include <ctype.h> #include <sys/utsname.h> -diff -upr ../orig/jdk/src/solaris/native/sun/font/X11TextRenderer.c ./jdk/src/solaris/native/sun/font/X11TextRenderer.c ---- ../orig/jdk/src/solaris/native/sun/font/X11TextRenderer.c 2009-01-27 15:45:51.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/font/X11TextRenderer.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/font/X11TextRenderer.c ./jdk/src/solaris/native/sun/font/X11TextRenderer.c +--- ../orig/jdk/src/solaris/native/sun/font/X11TextRenderer.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/font/X11TextRenderer.c 2009-05-14 23:41:34.000000000 -0400 @@ -39,7 +39,11 @@ #include "GraphicsPrimitiveMgr.h" #include "glyphblitting.h" @@ -14225,9 +16506,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/font/X11TextRenderer.c ./jdk/src/so JNIEXPORT void JNICALL AWTDrawGlyphList -diff -upr ../orig/jdk/src/solaris/native/sun/java2d/j2d_md.h ./jdk/src/solaris/native/sun/java2d/j2d_md.h ---- ../orig/jdk/src/solaris/native/sun/java2d/j2d_md.h 2009-01-27 15:45:51.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/java2d/j2d_md.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/java2d/j2d_md.h ./jdk/src/solaris/native/sun/java2d/j2d_md.h +--- ../orig/jdk/src/solaris/native/sun/java2d/j2d_md.h 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/java2d/j2d_md.h 2009-05-14 23:41:34.000000000 -0400 @@ -28,11 +28,11 @@ #include <sys/types.h> @@ -14243,9 +16524,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/java2d/j2d_md.h ./jdk/src/solaris/n typedef unsigned char jubyte; typedef unsigned short jushort; -diff -upr ../orig/jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c ./jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c ---- ../orig/jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c 2009-01-27 15:45:51.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c ./jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c +--- ../orig/jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c 2009-05-14 23:41:34.000000000 -0400 @@ -66,6 +66,10 @@ * MLIB_EDGE_SRC_PADDED */ @@ -14351,9 +16632,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c ./ LOGIC(da[0], dtmp, dtmp1, |); } else { /* aligned */ -diff -upr ../orig/jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c ./jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c ---- ../orig/jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c 2009-01-27 15:45:51.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c ./jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c +--- ../orig/jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c 2009-05-14 23:41:34.000000000 -0400 @@ -794,7 +794,7 @@ static AnyFunc* hash_table_vis[HASH_SIZE static int initialized; static int usevis = JNI_TRUE; @@ -14363,9 +16644,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c ./jdk/ # define ULTRA_CHIP "sparc64" #else # define ULTRA_CHIP "sun4u" -diff -upr ../orig/jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h ./jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h ---- ../orig/jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h 2009-01-27 15:45:51.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h ./jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h +--- ../orig/jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h 2009-05-14 23:41:34.000000000 -0400 @@ -27,7 +27,10 @@ #define OGLFuncs_md_h_Included @@ -14386,9 +16667,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h ./jdk/s } \ OGL_LIB_HANDLE = dlopen(libGLPath, RTLD_LAZY | RTLD_LOCAL); \ } \ -diff -upr ../orig/jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c ./jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c ---- ../orig/jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c 2009-01-27 15:45:51.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c ./jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c +--- ../orig/jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c 2009-05-14 23:41:34.000000000 -0400 @@ -32,6 +32,7 @@ #include "gdefs.h" @@ -14406,9 +16687,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c ./jdk/s } dgaAvailable = JNI_FALSE; if (lib != NULL) { -diff -upr ../orig/jdk/src/solaris/native/sun/jdga/dgalock.c ./jdk/src/solaris/native/sun/jdga/dgalock.c ---- ../orig/jdk/src/solaris/native/sun/jdga/dgalock.c 2009-01-27 15:45:51.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/jdga/dgalock.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/jdga/dgalock.c ./jdk/src/solaris/native/sun/jdga/dgalock.c +--- ../orig/jdk/src/solaris/native/sun/jdga/dgalock.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/jdga/dgalock.c 2009-05-14 23:41:34.000000000 -0400 @@ -44,6 +44,7 @@ #include <X11/Xlib.h> @@ -14431,9 +16712,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/jdga/dgalock.c ./jdk/src/solaris/na void *sym = dlsym(handle, "IsXineramaOn"); IsXineramaOn = (IsXineramaOnFunc *)sym; if (IsXineramaOn != 0 && (*IsXineramaOn)(display)) { -diff -upr ../orig/jdk/src/solaris/native/sun/management/FileSystemImpl.c ./jdk/src/solaris/native/sun/management/FileSystemImpl.c ---- ../orig/jdk/src/solaris/native/sun/management/FileSystemImpl.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/management/FileSystemImpl.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/management/FileSystemImpl.c ./jdk/src/solaris/native/sun/management/FileSystemImpl.c +--- ../orig/jdk/src/solaris/native/sun/management/FileSystemImpl.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/management/FileSystemImpl.c 2009-05-14 23:41:34.000000000 -0400 @@ -26,6 +26,10 @@ #include <sys/types.h> #include <sys/stat.h> @@ -14445,9 +16726,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/management/FileSystemImpl.c ./jdk/s #include "jni.h" #include "jni_util.h" #include "sun_management_FileSystemImpl.h" -diff -upr ../orig/jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c ./jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c ---- ../orig/jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c ./jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c +--- ../orig/jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c 2009-05-14 23:41:34.000000000 -0400 @@ -33,7 +33,7 @@ #include <strings.h> #endif @@ -14457,9 +16738,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c #include <string.h> #endif -diff -upr ../orig/jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c ./jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c ---- ../orig/jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c ./jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c +--- ../orig/jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c 2009-05-14 23:41:34.000000000 -0400 @@ -26,11 +26,12 @@ #include "jni.h" #include "jni_util.h" @@ -14486,9 +16767,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c ./jd gconf_ver = 2; } if (gconf_ver > 0) { -diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c ./jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c ---- ../orig/jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c ./jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c +--- ../orig/jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c 2009-05-14 23:41:34.000000000 -0400 @@ -35,7 +35,7 @@ #include <string.h> #include <errno.h> @@ -14538,9 +16819,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c ./jdk/ } #endif -diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c ./jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c ---- ../orig/jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c ./jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c +--- ../orig/jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c 2009-05-14 23:41:34.000000000 -0400 @@ -26,15 +26,21 @@ #include "jni.h" #include "jni_util.h" @@ -14667,9 +16948,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c ./jdk/src/ if (lockResult < 0) { JNU_ThrowIOExceptionWithLastError(env, "Release failed"); } -diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c ./jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c ---- ../orig/jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c ./jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c +--- ../orig/jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c 2009-05-14 23:41:34.000000000 -0400 @@ -32,8 +32,12 @@ #include <sys/socket.h> #include <fcntl.h> @@ -14683,9 +16964,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c ./jdk/src/s static int preCloseFD = -1; /* File descriptor to which we dup other fd's before closing them for real */ -diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/FileKey.c ./jdk/src/solaris/native/sun/nio/ch/FileKey.c ---- ../orig/jdk/src/solaris/native/sun/nio/ch/FileKey.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/nio/ch/FileKey.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/nio/ch/FileKey.c ./jdk/src/solaris/native/sun/nio/ch/FileKey.c +--- ../orig/jdk/src/solaris/native/sun/nio/ch/FileKey.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/nio/ch/FileKey.c 2009-05-14 23:41:34.000000000 -0400 @@ -30,6 +30,10 @@ #include "nio_util.h" #include "sun_nio_ch_FileKey.h" @@ -14697,9 +16978,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/FileKey.c ./jdk/src/solaris/ static jfieldID key_st_dev; /* id for FileKey.st_dev */ static jfieldID key_st_ino; /* id for FileKey.st_ino */ -diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/Net.c ./jdk/src/solaris/native/sun/nio/ch/Net.c ---- ../orig/jdk/src/solaris/native/sun/nio/ch/Net.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/nio/ch/Net.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/nio/ch/Net.c ./jdk/src/solaris/native/sun/nio/ch/Net.c +--- ../orig/jdk/src/solaris/native/sun/nio/ch/Net.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/nio/ch/Net.c 2009-05-14 23:41:34.000000000 -0400 @@ -140,8 +140,31 @@ Java_sun_nio_ch_Net_localPort(JNIEnv *en SOCKADDR sa; int sa_len = SOCKADDR_LEN; @@ -14841,9 +17122,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/nio/ch/Net.c ./jdk/src/solaris/nati case ECONNREFUSED: xn = JNU_JAVANETPKG "ConnectException"; break; -diff -upr ../orig/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c ./jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c ---- ../orig/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c ./jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c +--- ../orig/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c 2009-05-14 23:41:34.000000000 -0400 @@ -26,7 +26,9 @@ #include <stdio.h> #include <stdlib.h> @@ -14854,9 +17135,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c #include "NativeFunc.h" /* standard GSS method names (ordering is from mapfile) */ -diff -upr ../orig/jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c ./jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c ---- ../orig/jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c ./jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c +--- ../orig/jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -28,12 +28,19 @@ #include <string.h> @@ -14899,9 +17180,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c ./jdk (*env)->ReleaseStringUTFChars(env, jLibName, libName); dprintf2("-handle: %u (0X%X)\n", hModule, hModule); -diff -upr ../orig/jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c ./jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c ---- ../orig/jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c ./jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c +--- ../orig/jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -64,7 +64,9 @@ #include <assert.h> @@ -14912,9 +17193,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c ./ #include <jni.h> -diff -upr ../orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c ./jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c ---- ../orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c ./jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c +--- ../orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -29,7 +29,9 @@ #include <assert.h> @@ -14925,62 +17206,25 @@ diff -upr ../orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c ./jd #include <winscard.h> -diff -upr ../orig/jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c ./jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c ---- ../orig/jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c 2009-05-04 18:32:16.000000000 -0400 -+++ ./jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c 2009-05-04 17:37:15.000000000 -0400 -@@ -1,461 +1,3 @@ - /* -- * Copyright 2005 Sun Microsystems, Inc. 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 -- * under the terms of the GNU General Public License version 2 only, as -- * published by the Free Software Foundation. Sun designates this -- * particular file as subject to the "Classpath" exception as provided -- * by Sun in the LICENSE file that accompanied this code. -- * -- * This code is distributed in the hope that it will be useful, but WITHOUT -- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- * version 2 for more details (a copy is included in the LICENSE file that -- * accompanied this code). -- * -- * You should have received a copy of the GNU General Public License version -- * 2 along with this work; if not, write to the Free Software Foundation, -- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -- * -- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, -- * CA 95054 USA or visit www.sun.com if you need additional information or -- * have any questions. -+ * Dummy file - needs to be implemented for bsd - */ -- --#include "jni.h" --#include "jni_util.h" -- --#include <stdio.h> --#include <stdlib.h> --#include <string.h> --#include <errno.h> --#include <unistd.h> --#include <signal.h> --#include <dirent.h> --#include <ctype.h> --#include <sys/types.h> +diff -uNpr ../orig/jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c ./jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c +--- ../orig/jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c 2009-05-14 23:40:17.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c 2009-05-14 23:41:34.000000000 -0400 +@@ -35,10 +35,10 @@ + #include <dirent.h> + #include <ctype.h> + #include <sys/types.h> -#include <sys/types.h> --#include <sys/socket.h> --#include <sys/stat.h> --#include <sys/un.h> -- --#include "sun_tools_attach_BsdVirtualMachine.h" -- --#define RESTARTABLE(_cmd, _result) do { \ -- do { \ -- _result = _cmd; \ -- } while((_result == -1) && (errno == EINTR)); \ --} while(0) -- --/* + #include <sys/socket.h> + #include <sys/stat.h> + #include <sys/un.h> ++#include <fcntl.h> + + #include "sun_tools_attach_BsdVirtualMachine.h" + +@@ -49,85 +49,6 @@ + } while(0) + + /* - * Defines a callback that is invoked for each process - */ -typedef void (*ProcessCallback)(const pid_t pid, void* user_data); @@ -15060,66 +17304,13 @@ diff -upr ../orig/jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c ./ - - -/* -- * Class: sun_tools_attach_BsdVirtualMachine -- * Method: socket -- * Signature: ()I -- */ --JNIEXPORT jint JNICALL Java_sun_tools_attach_BsdVirtualMachine_socket -- (JNIEnv *env, jclass cls) --{ -- int fd = socket(PF_UNIX, SOCK_STREAM, 0); -- if (fd == -1) { -- JNU_ThrowIOExceptionWithLastError(env, "socket"); -- } -- return (jint)fd; --} -- --/* -- * Class: sun_tools_attach_BsdVirtualMachine -- * Method: connect -- * Signature: (ILjava/lang/String;)I -- */ --JNIEXPORT void JNICALL Java_sun_tools_attach_BsdVirtualMachine_connect -- (JNIEnv *env, jclass cls, jint fd, jstring path) --{ -- jboolean isCopy; -- const char* p = GetStringPlatformChars(env, path, &isCopy); -- if (p != NULL) { -- struct sockaddr_un addr; -- int err = 0; -- -- addr.sun_family = AF_UNIX; -- strcpy(addr.sun_path, p); -- -- if (connect(fd, (struct sockaddr*)&addr, sizeof(addr)) == -1) { -- err = errno; -- } -- -- if (isCopy) { -- JNU_ReleaseStringPlatformChars(env, path, p); -- } -- -- /* -- * If the connect failed then we throw the appropriate exception -- * here (can't throw it before releasing the string as can't call -- * JNI with pending exception) -- */ -- if (err != 0) { -- if (err == ENOENT) { -- JNU_ThrowByName(env, "java/io/FileNotFoundException", NULL); -- } else { -- char* msg = strdup(strerror(err)); -- JNU_ThrowIOException(env, msg); -- if (msg != NULL) { -- free(msg); -- } -- } -- } -- } --} -- --/* -- * Class: sun_tools_attach_BsdVirtualMachine + * Class: sun_tools_attach_BsdVirtualMachine + * Method: socket + * Signature: ()I +@@ -188,146 +109,6 @@ JNIEXPORT void JNICALL Java_sun_tools_at + + /* + * Class: sun_tools_attach_BsdVirtualMachine - * Method: isBsdThreads - * Signature: ()V - */ @@ -15260,140 +17451,71 @@ diff -upr ../orig/jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c ./ - -/* - * Class: sun_tools_attach_BsdVirtualMachine -- * Method: sendQuitTo -- * Signature: (I)V -- */ --JNIEXPORT void JNICALL Java_sun_tools_attach_BsdVirtualMachine_sendQuitTo -- (JNIEnv *env, jclass cls, jint pid) --{ -- if (kill((pid_t)pid, SIGQUIT)) { -- JNU_ThrowIOExceptionWithLastError(env, "kill"); -- } --} -- --/* -- * Class: sun_tools_attach_BsdVirtualMachine -- * Method: checkPermissions -- * Signature: (Ljava/lang/String;)V -- */ --JNIEXPORT void JNICALL Java_sun_tools_attach_BsdVirtualMachine_checkPermissions -- (JNIEnv *env, jclass cls, jstring path) --{ -- jboolean isCopy; -- const char* p = GetStringPlatformChars(env, path, &isCopy); -- if (p != NULL) { + * Method: sendQuitTo + * Signature: (I)V + */ +@@ -350,7 +131,7 @@ JNIEXPORT void JNICALL Java_sun_tools_at + jboolean isCopy; + const char* p = GetStringPlatformChars(env, path, &isCopy); + if (p != NULL) { - struct stat64 sb; -- uid_t uid, gid; -- int res; -- -- /* -- * Check that the path is owned by the effective uid/gid of this -- * process. Also check that group/other access is not allowed. -- */ -- uid = geteuid(); -- gid = getegid(); -- ++ struct stat sb; + uid_t uid, gid; + int res; + +@@ -361,7 +142,7 @@ JNIEXPORT void JNICALL Java_sun_tools_at + uid = geteuid(); + gid = getegid(); + - res = stat64(p, &sb); -- if (res != 0) { -- /* save errno */ -- res = errno; -- } -- -- /* release p here before we throw an I/O exception */ -- if (isCopy) { -- JNU_ReleaseStringPlatformChars(env, path, p); -- } -- -- if (res == 0) { -- if ( (sb.st_uid != uid) || (sb.st_gid != gid) || -- ((sb.st_mode & (S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)) != 0) ) { -- JNU_ThrowIOException(env, "well-known file is not secure"); -- } -- } else { -- char* msg = strdup(strerror(res)); -- JNU_ThrowIOException(env, msg); -- if (msg != NULL) { -- free(msg); -- } -- } -- } --} -- --/* -- * Class: sun_tools_attach_BsdVirtualMachine -- * Method: close -- * Signature: (I)V -- */ --JNIEXPORT void JNICALL Java_sun_tools_attach_BsdVirtualMachine_close -- (JNIEnv *env, jclass cls, jint fd) --{ -- int res; -- RESTARTABLE(close(fd), res); --} -- --/* -- * Class: sun_tools_attach_BsdVirtualMachine -- * Method: read -- * Signature: (I[BI)I -- */ --JNIEXPORT jint JNICALL Java_sun_tools_attach_BsdVirtualMachine_read -- (JNIEnv *env, jclass cls, jint fd, jbyteArray ba, jint off, jint baLen) --{ -- unsigned char buf[128]; -- size_t len = sizeof(buf); -- ssize_t n; -- -- size_t remaining = (size_t)(baLen - off); -- if (len > remaining) { -- len = remaining; -- } -- -- RESTARTABLE(read(fd, buf+off, len), n); -- if (n == -1) { -- JNU_ThrowIOExceptionWithLastError(env, "read"); -- } else { -- if (n == 0) { -- n = -1; // EOF -- } else { -- (*env)->SetByteArrayRegion(env, ba, off, (jint)n, (jbyte *)(buf+off)); -- } -- } -- return n; --} -- --/* -- * Class: sun_tools_attach_BsdVirtualMachine -- * Method: write -- * Signature: (I[B)V -- */ --JNIEXPORT void JNICALL Java_sun_tools_attach_BsdVirtualMachine_write -- (JNIEnv *env, jclass cls, jint fd, jbyteArray ba, jint off, jint bufLen) --{ -- size_t remaining = bufLen; -- do { -- unsigned char buf[128]; -- size_t len = sizeof(buf); -- int n; -- -- if (len > remaining) { -- len = remaining; -- } -- (*env)->GetByteArrayRegion(env, ba, off, len, (jbyte *)buf); -- -- RESTARTABLE(write(fd, buf, len), n); -- if (n > 0) { -- off += n; -- remaining -= n; -- } else { -- JNU_ThrowIOExceptionWithLastError(env, "write"); -- return; -- } -- -- } while (remaining > 0); --} -diff -upr ../orig/jdk/src/solaris/native/sun/xawt/XWindow.c ./jdk/src/solaris/native/sun/xawt/XWindow.c ---- ../orig/jdk/src/solaris/native/sun/xawt/XWindow.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/xawt/XWindow.c 2009-05-04 17:37:17.000000000 -0400 ++ res = stat(p, &sb); + if (res != 0) { + /* save errno */ + res = errno; +@@ -459,3 +240,40 @@ JNIEXPORT void JNICALL Java_sun_tools_at + + } while (remaining > 0); + } ++ ++/* ++ * Class: sun_tools_attach_BSDVirtualMachine ++ * Method: createAttachFile ++ * Signature: (Ljava.lang.String;)V ++ */ ++JNIEXPORT void JNICALL Java_sun_tools_attach_BsdVirtualMachine_createAttachFile(JNIEnv *env, jclass cls, jstring path) ++{ ++ const char* _path; ++ jboolean isCopy; ++ int fd, rc; ++ ++ _path = GetStringPlatformChars(env, path, &isCopy); ++ if (_path == NULL) { ++ JNU_ThrowIOException(env, "Must specify a path"); ++ return; ++ } ++ ++ RESTARTABLE(open(_path, O_CREAT | O_EXCL, S_IWUSR | S_IRUSR), fd); ++ if (fd == -1) { ++ /* release p here before we throw an I/O exception */ ++ if (isCopy) { ++ JNU_ReleaseStringPlatformChars(env, path, _path); ++ } ++ JNU_ThrowIOExceptionWithLastError(env, "open"); ++ return; ++ } ++ ++ RESTARTABLE(chown(_path, geteuid(), getegid()), rc); ++ ++ RESTARTABLE(close(fd), rc); ++ ++ /* release p here */ ++ if (isCopy) { ++ JNU_ReleaseStringPlatformChars(env, path, _path); ++ } ++} +diff -uNpr ../orig/jdk/src/solaris/native/sun/xawt/XWindow.c ./jdk/src/solaris/native/sun/xawt/XWindow.c +--- ../orig/jdk/src/solaris/native/sun/xawt/XWindow.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/xawt/XWindow.c 2009-05-14 23:41:34.000000000 -0400 @@ -228,10 +228,10 @@ KeymapEntry keymapTable[] = {java_awt_event_KeyEvent_VK_DOWN, XK_Down, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_STANDARD}, @@ -15418,9 +17540,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/xawt/XWindow.c ./jdk/src/solaris/na /* The following code on Linux will cause the keypad keys * not to echo on JTextField when the NumLock is on. The * keysyms will be 0, because the last parameter 2 is not defined. -diff -upr ../orig/jdk/src/solaris/native/sun/xawt/awt_Desktop.c ./jdk/src/solaris/native/sun/xawt/awt_Desktop.c ---- ../orig/jdk/src/solaris/native/sun/xawt/awt_Desktop.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/native/sun/xawt/awt_Desktop.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/native/sun/xawt/awt_Desktop.c ./jdk/src/solaris/native/sun/xawt/awt_Desktop.c +--- ../orig/jdk/src/solaris/native/sun/xawt/awt_Desktop.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/native/sun/xawt/awt_Desktop.c 2009-05-14 23:41:34.000000000 -0400 @@ -24,6 +24,7 @@ */ @@ -15447,9 +17569,9 @@ diff -upr ../orig/jdk/src/solaris/native/sun/xawt/awt_Desktop.c ./jdk/src/solari if (gnome_handle == NULL) { #ifdef INTERNAL_BUILD fprintf(stderr, "can not load libgnome-2.so\n"); -diff -upr ../orig/jdk/src/solaris/npt/npt_md.h ./jdk/src/solaris/npt/npt_md.h ---- ../orig/jdk/src/solaris/npt/npt_md.h 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/npt/npt_md.h 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/npt/npt_md.h ./jdk/src/solaris/npt/npt_md.h +--- ../orig/jdk/src/solaris/npt/npt_md.h 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/npt/npt_md.h 2009-05-14 23:41:34.000000000 -0400 @@ -32,9 +32,10 @@ #include <string.h> #include <errno.h> @@ -15472,9 +17594,9 @@ diff -upr ../orig/jdk/src/solaris/npt/npt_md.h ./jdk/src/solaris/npt/npt_md.h if ( _handle == NULL ) NPT_ERROR("Cannot open library"); \ _sym = dlsym(_handle, "nptInitialize"); \ if ( _sym == NULL ) NPT_ERROR("Cannot find nptInitialize"); \ -diff -upr ../orig/jdk/src/solaris/transport/socket/socket_md.c ./jdk/src/solaris/transport/socket/socket_md.c ---- ../orig/jdk/src/solaris/transport/socket/socket_md.c 2009-01-27 15:45:52.000000000 -0500 -+++ ./jdk/src/solaris/transport/socket/socket_md.c 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/jdk/src/solaris/transport/socket/socket_md.c ./jdk/src/solaris/transport/socket/socket_md.c +--- ../orig/jdk/src/solaris/transport/socket/socket_md.c 2009-04-24 03:34:35.000000000 -0400 ++++ ./jdk/src/solaris/transport/socket/socket_md.c 2009-05-14 23:41:34.000000000 -0400 @@ -36,7 +36,7 @@ #ifdef __solaris__ #include <thread.h> @@ -15493,9 +17615,9 @@ diff -upr ../orig/jdk/src/solaris/transport/socket/socket_md.c ./jdk/src/solaris int dbgsysTlsAlloc() { pthread_key_t key; -diff -upr ../orig/langtools/src/share/classes/com/sun/tools/javah/Util.java ./langtools/src/share/classes/com/sun/tools/javah/Util.java ---- ../orig/langtools/src/share/classes/com/sun/tools/javah/Util.java 2009-01-27 15:46:42.000000000 -0500 -+++ ./langtools/src/share/classes/com/sun/tools/javah/Util.java 2009-05-04 17:37:17.000000000 -0400 +diff -uNpr ../orig/langtools/src/share/classes/com/sun/tools/javah/Util.java ./langtools/src/share/classes/com/sun/tools/javah/Util.java +--- ../orig/langtools/src/share/classes/com/sun/tools/javah/Util.java 2009-04-24 03:35:10.000000000 -0400 ++++ ./langtools/src/share/classes/com/sun/tools/javah/Util.java 2009-05-14 23:41:34.000000000 -0400 @@ -180,6 +180,14 @@ public class Util { os = "win32"; } else if (os.indexOf("Linux") >= 0) { |