ports/145806: [PATCH] Update java/openjdk6 to b19 (latest one)

Lev A. Serebryakov lev at FreeBSD.org
Sun Apr 18 17:10:05 UTC 2010


>Number:         145806
>Category:       ports
>Synopsis:       [PATCH] Update java/openjdk6 to b19 (latest one)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Apr 18 17:10:01 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Lev A. Serebryakov
>Release:        FreeBSD 7.2-STABLE amd64
>Organization:
>Environment:
System: FreeBSD blob.home.serebryakov.spb.ru 7.2-STABLE FreeBSD 7.2-STABLE #0: Tue Jul 28 22:39:45 MSD 2009 lev at blob.home.serebryakov.spb.ru:/usr/home/build/world/usr/src/sys/BLOB amd64


>Description:

  Update `java/openjdk6' to latest build 19.
  This build fails 44 tests, but build 17 fails them too.

  This OpenJDK6 build adds support for ``Zero'' -- VM version without any assembler code at all (it is fully architecture-agnostic, at leasr in theory). It could be used for new arhitectures (ARM, MIPS, PowerPC). It is not enabled here, because I don't have any hardware to test it.

  This PR supersedes PR ports/14505.

>How-To-Repeat:
>Fix:
diff -ruN /usr/ports/java/openjdk6/Makefile ./Makefile
--- /usr/ports/java/openjdk6/Makefile	2010-01-26 20:11:33.000000000 +0300
+++ ./Makefile	2010-04-17 13:59:51.000000000 +0400
@@ -6,8 +6,8 @@
 #
 
 PORTNAME=	openjdk6
-PORTVERSION=	b17
-PORTREVISION=	2
+PORTVERSION=	b19
+PORTREVISION=	0
 CATEGORIES=	java devel
 MASTER_SITES=	http://download.java.net/openjdk/jdk6/promoted/${PORTVERSION}/ \
 		${MASTER_SITE_APACHE:S,%SUBDIR%/,ant/binaries/:ant,} \
@@ -25,7 +25,7 @@
 RUN_DEPENDS=	javavm:${PORTSDIR}/java/javavmwrapper \
 		${LOCALBASE}/lib/X11/fonts/dejavu:${PORTSDIR}/x11-fonts/dejavu
 
-OPENJDK_BUILDDATE=	14_oct_2009
+OPENJDK_BUILDDATE=	15_apr_2010
 
 OPTIONS=	DEBUG "Enable legacy debugging support" off \
 		FASTDEBUG "Include fastdebug build" off \
diff -ruN /usr/ports/java/openjdk6/distinfo ./distinfo
--- /usr/ports/java/openjdk6/distinfo	2010-01-21 11:51:59.000000000 +0300
+++ ./distinfo	2010-04-17 13:59:57.000000000 +0400
@@ -1,6 +1,6 @@
-MD5 (openjdk-6-src-b17-14_oct_2009.tar.gz) = 078fe0ab744c98694decc77f2456c560
-SHA256 (openjdk-6-src-b17-14_oct_2009.tar.gz) = 2019a4c3d2d14620caa78d7df49fd987a041066b4631bde4fd8424033f3c1785
-SIZE (openjdk-6-src-b17-14_oct_2009.tar.gz) = 50029293
+MD5 (openjdk-6-src-b19-15_apr_2010.tar.gz) = 39bbf623a6c83ca63b92593062a28146
+SHA256 (openjdk-6-src-b19-15_apr_2010.tar.gz) = 475e788dc9fe7f360edc147167e81111e46afae96df6b8a184c13d1e160ae8e4
+SIZE (openjdk-6-src-b19-15_apr_2010.tar.gz) = 44912180
 MD5 (apache-ant-1.7.1-bin.tar.bz2) = 9330447f3763b87570dd1118c49a8efd
 SHA256 (apache-ant-1.7.1-bin.tar.bz2) = 24e54c9d90b81d1b7342695a8285a969393fd883e99ffbbc04203c106d9c2f97
 SIZE (apache-ant-1.7.1-bin.tar.bz2) = 7641928
diff -ruN /usr/ports/java/openjdk6/files/patch-set ./files/patch-set
--- /usr/ports/java/openjdk6/files/patch-set	2010-01-21 11:51:59.000000000 +0300
+++ ./files/patch-set	2010-04-18 12:39:51.000000000 +0400
@@ -1,6 +1,6 @@
 diff -uNr ../orig/Makefile ./Makefile
---- ../orig/Makefile	2009-10-14 10:12:12.000000000 -0700
-+++ ./Makefile	2009-10-22 22:37:21.000000000 -0700
+--- ../orig/Makefile	2010-04-15 11:30:12.000000000 +0400
++++ ./Makefile	2010-04-17 21:48:07.000000000 +0400
 @@ -159,6 +159,18 @@
    clobber:: deploy-clobber
  endif
@@ -21,8 +21,8 @@
  # Generic debug build, fastdebug or debug. Needs special handling.
  #  Note that debug builds do NOT do INSTALL steps, but must be done
 diff -uNr ../orig/corba/make/common/Defs-bsd.gmk ./corba/make/common/Defs-bsd.gmk
---- ../orig/corba/make/common/Defs-bsd.gmk	2009-10-22 23:07:25.000000000 -0700
-+++ ./corba/make/common/Defs-bsd.gmk	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/corba/make/common/Defs-bsd.gmk	2010-04-17 21:43:54.000000000 +0400
++++ ./corba/make/common/Defs-bsd.gmk	2010-04-17 21:48:07.000000000 +0400
 @@ -40,18 +40,12 @@
  # Get shared JDK settings
  include $(BUILDDIR)/common/shared/Defs.gmk
@@ -54,7 +54,7 @@
  CFLAGS_REQUIRED_ia64    += -fno-omit-frame-pointer -D_LITTLE_ENDIAN
  CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9
  LDFLAGS_COMMON_sparcv9  += -m64 -mcpu=v9
-@@ -168,7 +166,7 @@
+@@ -176,7 +174,7 @@
    CXXFLAGS_DBG	+= $(CC_LOWER_OPT)
  endif
  
@@ -63,7 +63,7 @@
  		  -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT
  
  ifeq ($(ARCH_DATA_MODEL), 64)
-@@ -178,33 +176,15 @@
+@@ -186,33 +184,16 @@
  CPPFLAGS_OPT    = 
  CPPFLAGS_DBG    = -DDEBUG
  
@@ -85,23 +85,23 @@
 -
 -EXTRA_LIBS += -lc
 -
--LDFLAGS_DEFS_OPTION  = -z defs
+-LDFLAGS_DEFS_OPTION  = -Xlinker -z -Xlinker defs
 -LDFLAGS_COMMON  += $(LDFLAGS_DEFS_OPTION)
 -
  #
  # -L paths for finding and -ljava
  #
--LDFLAGS_OPT     = -Xlinker -O1
- LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH)
+ LDFLAGS_OPT     = -Xlinker -O1
 +
 +ifneq ($(OS_VENDOR), Apple)
-+LDFLAGS_OPT     = -Xlinker -O1
+ LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH)
  LDFLAGS_COMMON += -Wl,-soname=$(LIB_PREFIX)$(LIBRARY).$(LIBRARY_SUFFIX)
 +endif
++
  
  #
  # -static-libgcc is a gcc-3 flag to statically link libgcc, gcc-2.9x always
-@@ -235,13 +215,9 @@
+@@ -243,13 +224,9 @@
  #
  LD_MAPFILE_FLAG = -Xlinker --version-script -Xlinker
  
@@ -118,7 +118,7 @@
  endif
  
  #
-@@ -270,7 +246,9 @@
+@@ -278,7 +255,9 @@
  override HAVE_FILIOH             = false
  override HAVE_GETHRTIME          = false
  override HAVE_GETHRVTIME         = false
@@ -128,7 +128,7 @@
  override LEX_LIBRARY             = -lfl
  ifeq ($(STATIC_CXX),true)
  override LIBCXX                  = -Wl,-Bstatic -lstdc++ -lgcc -Wl,-Bdynamic
-@@ -281,13 +259,9 @@
+@@ -289,13 +268,9 @@
  override LIBSOCKET               =
  override LIBTHREAD               =
  override MOOT_PRIORITIES         = true
@@ -145,9 +145,9 @@
  override SUN_CMM_SUBDIR          =
  override THREADS_FLAG            = native
 diff -uNr ../orig/corba/make/common/Defs-linux.gmk ./corba/make/common/Defs-linux.gmk
---- ../orig/corba/make/common/Defs-linux.gmk	2009-10-14 10:12:21.000000000 -0700
-+++ ./corba/make/common/Defs-linux.gmk	2009-10-28 20:01:54.000000000 -0700
-@@ -282,7 +282,7 @@
+--- ../orig/corba/make/common/Defs-linux.gmk	2010-04-15 11:30:23.000000000 +0400
++++ ./corba/make/common/Defs-linux.gmk	2010-04-17 21:48:07.000000000 +0400
+@@ -290,7 +290,7 @@
  override LIBTHREAD               =
  override MOOT_PRIORITIES         = true
  override NO_INTERRUPTIBLE_IO     = true
@@ -157,8 +157,8 @@
  override OPENWIN_LIB             = $(OPENWIN_HOME)/lib64
  else
 diff -uNr ../orig/corba/make/common/Defs.gmk ./corba/make/common/Defs.gmk
---- ../orig/corba/make/common/Defs.gmk	2009-10-14 10:12:21.000000000 -0700
-+++ ./corba/make/common/Defs.gmk	2009-10-28 20:01:54.000000000 -0700
+--- ../orig/corba/make/common/Defs.gmk	2010-04-15 11:30:23.000000000 +0400
++++ ./corba/make/common/Defs.gmk	2010-04-17 21:48:07.000000000 +0400
 @@ -53,6 +53,24 @@
  
  _OUTPUTDIR=$(TOPDIR)/build/$(PLATFORM)-$(ARCH)
@@ -195,8 +195,8 @@
  
  LDLIBS_COMMON += $(EXTRA_LIBS)
 diff -uNr ../orig/corba/make/common/Mapfile-vers.gmk ./corba/make/common/Mapfile-vers.gmk
---- ../orig/corba/make/common/Mapfile-vers.gmk	2009-10-14 10:12:21.000000000 -0700
-+++ ./corba/make/common/Mapfile-vers.gmk	2009-10-28 20:01:54.000000000 -0700
+--- ../orig/corba/make/common/Mapfile-vers.gmk	2010-04-15 11:30:23.000000000 +0400
++++ ./corba/make/common/Mapfile-vers.gmk	2010-04-17 21:48:07.000000000 +0400
 @@ -77,7 +77,7 @@
  endif # PLATFORM
  
@@ -207,9 +207,9 @@
  ifeq ($(VARIANT), OPT)
    # OPT build MUST have a mapfile?
 diff -uNr ../orig/corba/make/common/shared/Compiler-gcc.gmk ./corba/make/common/shared/Compiler-gcc.gmk
---- ../orig/corba/make/common/shared/Compiler-gcc.gmk	2009-10-14 10:12:21.000000000 -0700
-+++ ./corba/make/common/shared/Compiler-gcc.gmk	2009-10-28 20:01:54.000000000 -0700
-@@ -94,6 +94,24 @@
+--- ../orig/corba/make/common/shared/Compiler-gcc.gmk	2010-04-15 11:30:23.000000000 +0400
++++ ./corba/make/common/shared/Compiler-gcc.gmk	2010-04-17 21:48:07.000000000 +0400
+@@ -100,6 +100,24 @@
  
  endif
  
@@ -235,8 +235,8 @@
  
    # Settings specific to Solaris
 diff -uNr ../orig/corba/make/common/shared/Compiler.gmk ./corba/make/common/shared/Compiler.gmk
---- ../orig/corba/make/common/shared/Compiler.gmk	2009-10-14 10:12:21.000000000 -0700
-+++ ./corba/make/common/shared/Compiler.gmk	2009-10-28 20:01:54.000000000 -0700
+--- ../orig/corba/make/common/shared/Compiler.gmk	2010-04-15 11:30:23.000000000 +0400
++++ ./corba/make/common/shared/Compiler.gmk	2010-04-17 21:48:07.000000000 +0400
 @@ -42,6 +42,11 @@
    override CC_VERSION = gcc
  endif
@@ -250,8 +250,8 @@
  include $(BUILDDIR)/common/shared/Compiler-$(CC_VERSION).gmk
  
 diff -uNr ../orig/corba/make/common/shared/Defs-bsd.gmk ./corba/make/common/shared/Defs-bsd.gmk
---- ../orig/corba/make/common/shared/Defs-bsd.gmk	2009-10-22 23:07:25.000000000 -0700
-+++ ./corba/make/common/shared/Defs-bsd.gmk	2009-10-28 20:01:54.000000000 -0700
+--- ../orig/corba/make/common/shared/Defs-bsd.gmk	2010-04-17 21:43:54.000000000 +0400
++++ ./corba/make/common/shared/Defs-bsd.gmk	2010-04-17 21:48:07.000000000 +0400
 @@ -54,7 +54,7 @@
  endef
  
@@ -271,8 +271,8 @@
  
  # _BOOTDIR1: First choice for a Bootstrap JDK, previous released JDK.
 diff -uNr ../orig/corba/make/common/shared/Defs-java.gmk ./corba/make/common/shared/Defs-java.gmk
---- ../orig/corba/make/common/shared/Defs-java.gmk	2009-10-14 10:12:21.000000000 -0700
-+++ ./corba/make/common/shared/Defs-java.gmk	2009-10-29 20:39:14.000000000 -0700
+--- ../orig/corba/make/common/shared/Defs-java.gmk	2010-04-15 11:30:23.000000000 +0400
++++ ./corba/make/common/shared/Defs-java.gmk	2010-04-17 21:48:07.000000000 +0400
 @@ -38,7 +38,7 @@
    #   Suspect this may not be needed anymore.
    JAVA_MEM_FLAGS   += -Xms$(MAX_VM_MEMORY)m -XX:-Inline
@@ -283,8 +283,8 @@
  
  # 
 diff -uNr ../orig/corba/make/common/shared/Defs-utils.gmk ./corba/make/common/shared/Defs-utils.gmk
---- ../orig/corba/make/common/shared/Defs-utils.gmk	2009-10-14 10:12:21.000000000 -0700
-+++ ./corba/make/common/shared/Defs-utils.gmk	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/corba/make/common/shared/Defs-utils.gmk	2010-04-15 11:30:23.000000000 +0400
++++ ./corba/make/common/shared/Defs-utils.gmk	2010-04-17 21:48:07.000000000 +0400
 @@ -53,6 +53,13 @@
    UTILS_DEVTOOL_PATH=$(USRBIN_PATH)
  endif
@@ -333,9 +333,9 @@
 +  endif
 +endif
 diff -uNr ../orig/corba/make/common/shared/Platform.gmk ./corba/make/common/shared/Platform.gmk
---- ../orig/corba/make/common/shared/Platform.gmk	2009-10-14 10:12:21.000000000 -0700
-+++ ./corba/make/common/shared/Platform.gmk	2009-10-28 20:01:53.000000000 -0700
-@@ -262,6 +262,76 @@
+--- ../orig/corba/make/common/shared/Platform.gmk	2010-04-15 11:30:23.000000000 +0400
++++ ./corba/make/common/shared/Platform.gmk	2010-04-17 21:48:07.000000000 +0400
+@@ -265,6 +265,76 @@
    MB_OF_MEMORY := $(shell free -m | fgrep Mem: | sed -e 's@\ \ *@ @g' | cut -d' ' -f2)
  endif
  
@@ -412,7 +412,7 @@
  # Windows with and without CYGWIN will be slightly different
  ifeq ($(SYSTEM_UNAME), Windows_NT)
    PLATFORM = windows
-@@ -373,7 +443,14 @@
+@@ -376,7 +446,14 @@
  #    build machines and adjustments will be made to prevent excessing
  #    system swapping during the build.
  #    If we don't know, assume 512. Subtract 128 from MB for VM MAX.
@@ -428,7 +428,7 @@
  ifneq ($(MB_OF_MEMORY),)
    LOW_MEMORY_MACHINE := $(shell \
      if [ $(MB_OF_MEMORY) -le 512 ] ; then \
-@@ -385,7 +462,7 @@
+@@ -388,7 +465,7 @@
      if [ $(MB_OF_MEMORY) -le 1024 ] ; then \
        expr $(MB_OF_MEMORY) '-' 128 ; \
      else \
@@ -438,8 +438,8 @@
    MIN_VM_MEMORY := $(shell \
      if [ $(MAX_VM_MEMORY) -le 128 ] ; then \
 diff -uNr ../orig/corba/make/sun/corba/core/Makefile ./corba/make/sun/corba/core/Makefile
---- ../orig/corba/make/sun/corba/core/Makefile	2009-10-14 10:12:21.000000000 -0700
-+++ ./corba/make/sun/corba/core/Makefile	2009-10-22 22:36:15.000000000 -0700
+--- ../orig/corba/make/sun/corba/core/Makefile	2010-04-15 11:30:23.000000000 +0400
++++ ./corba/make/sun/corba/core/Makefile	2010-04-17 21:48:07.000000000 +0400
 @@ -53,11 +53,19 @@
  ifdef STANDALONE_CORBA_WS
  # FIXUP: What is this all about?
@@ -461,8 +461,8 @@
  
  FILES_c = ioser.c
 diff -uNr ../orig/hotspot/agent/make/Makefile ./hotspot/agent/make/Makefile
---- ../orig/hotspot/agent/make/Makefile	2009-10-14 10:13:08.000000000 -0700
-+++ ./hotspot/agent/make/Makefile	2009-10-22 22:36:36.000000000 -0700
+--- ../orig/hotspot/agent/make/Makefile	2010-04-15 11:31:15.000000000 +0400
++++ ./hotspot/agent/make/Makefile	2010-04-17 21:48:07.000000000 +0400
 @@ -52,6 +52,9 @@
  sun.jvm.hotspot.compiler \
  sun.jvm.hotspot.debugger \
@@ -504,8 +504,8 @@
  sun/jvm/hotspot/runtime/linux/*.java \
  sun/jvm/hotspot/runtime/linux_amd64/*.java \
 diff -uNr ../orig/hotspot/agent/src/os/bsd/BsdDebuggerLocal.c ./hotspot/agent/src/os/bsd/BsdDebuggerLocal.c
---- ../orig/hotspot/agent/src/os/bsd/BsdDebuggerLocal.c	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/BsdDebuggerLocal.c	2009-10-27 12:57:11.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/BsdDebuggerLocal.c	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/BsdDebuggerLocal.c	2010-04-17 21:48:07.000000000 +0400
 @@ -22,6 +22,7 @@
   *
   */
@@ -640,8 +640,8 @@
  #endif /* amd64 */
  
 diff -uNr ../orig/hotspot/agent/src/os/bsd/Makefile ./hotspot/agent/src/os/bsd/Makefile
---- ../orig/hotspot/agent/src/os/bsd/Makefile	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/Makefile	2009-10-22 22:36:51.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/Makefile	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/Makefile	2010-04-17 21:48:07.000000000 +0400
 @@ -22,7 +22,7 @@
  #  
  #
@@ -682,7 +682,7 @@
  	$(GCC) $(CFLAGS) $<
  
  .c.obj:
-@@ -64,14 +64,15 @@
+@@ -72,14 +72,15 @@
  	if [ ! -d $(ARCH) ] ; then mkdir $(ARCH) ; fi
  	$(GCC) -shared $(LFLAGS_LIBSA) -o $(LIBSA) $(OBJS) $(LIBS)
  
@@ -703,8 +703,8 @@
 +	-rmdir $(ARCH)
  
 diff -uNr ../orig/hotspot/agent/src/os/bsd/elfmacros.h ./hotspot/agent/src/os/bsd/elfmacros.h
---- ../orig/hotspot/agent/src/os/bsd/elfmacros.h	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/elfmacros.h	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/elfmacros.h	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/elfmacros.h	2010-04-17 21:48:07.000000000 +0400
 @@ -25,16 +25,19 @@
  #ifndef _ELFMACROS_H_
  #define _ELFMACROS_H_
@@ -741,8 +741,8 @@
  #endif
  
 diff -uNr ../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	2009-10-27 23:01:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/hsearch_r.c	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/hsearch_r.c	1970-01-01 03:00:00.000000000 +0300
++++ ./hotspot/agent/src/os/bsd/hsearch_r.c	2010-03-14 20:12:55.000000000 +0300
 @@ -0,0 +1,217 @@
 +/* Copyright (C) 1993,1995-1997,2002,2005,2007,2008
 +   Free Software Foundation, Inc.
@@ -962,8 +962,8 @@
 +  return 0;
 +}
 diff -uNr ../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	2009-10-27 23:01:13.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/hsearch_r.h	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/hsearch_r.h	1970-01-01 03:00:00.000000000 +0300
++++ ./hotspot/agent/src/os/bsd/hsearch_r.h	2010-03-14 20:12:55.000000000 +0300
 @@ -0,0 +1,42 @@
 +/* Declarations for System V style searching functions.
 +   Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc.
@@ -1008,8 +1008,8 @@
 +
 +#endif /* _HSEARCH_R_H_ */
 diff -uNr ../orig/hotspot/agent/src/os/bsd/libproc.h ./hotspot/agent/src/os/bsd/libproc.h
---- ../orig/hotspot/agent/src/os/bsd/libproc.h	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/libproc.h	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/libproc.h	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/libproc.h	2010-04-17 21:48:07.000000000 +0400
 @@ -27,7 +27,8 @@
  
  #include <unistd.h>
@@ -1069,8 +1069,8 @@
  // get number of shared objects
  int get_num_libs(struct ps_prochandle* ph);
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/libproc_impl.c	2009-10-21 21:24:06.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/libproc_impl.c	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/libproc_impl.c	2010-04-17 21:48:07.000000000 +0400
 @@ -177,8 +177,11 @@
     newlib->symtab = build_symtab(newlib->fd);
     if (newlib->symtab == NULL) {
@@ -1161,8 +1161,8 @@
  }
 +
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/libproc_impl.h	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/libproc_impl.h	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/libproc_impl.h	2010-04-17 21:48:07.000000000 +0400
 @@ -47,7 +47,7 @@
  typedef struct thread_info {
     lwpid_t                  lwp_id;
@@ -1184,8 +1184,8 @@
  
  // the ps_prochandle
 diff -uNr ../orig/hotspot/agent/src/os/bsd/mapfile ./hotspot/agent/src/os/bsd/mapfile
---- ../orig/hotspot/agent/src/os/bsd/mapfile	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/mapfile	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/mapfile	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/mapfile	2010-04-17 21:48:07.000000000 +0400
 @@ -41,15 +41,21 @@
  		Java_sun_jvm_hotspot_debugger_bsd_BsdDebuggerLocal_getThreadIntegerRegisterSet0;
  	
@@ -1213,8 +1213,8 @@
                  # used by attach test program
                  init_libproc;
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/proc_service.h	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/proc_service.h	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/proc_service.h	2010-04-17 21:48:07.000000000 +0400
 @@ -22,6 +22,8 @@
   *
   */
@@ -1239,8 +1239,8 @@
  
  ps_err_e ps_lsetfpregs(struct ps_prochandle *ph, lwpid_t lid, const prfpregset_t *fpregs);
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/ps_core.c	2009-10-27 12:44:09.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/ps_core.c	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/ps_core.c	2010-04-17 21:48:07.000000000 +0400
 @@ -142,6 +142,7 @@
  
     map->next = ph->core->class_share_maps;
@@ -1251,8 +1251,8 @@
  // Return the map_info for the given virtual address.  We keep a sorted
 @@ -240,7 +241,7 @@
  
- static bool read_int(struct ps_prochandle* ph, uintptr_t addr, int* pvalue) {
-    int i;
+ static bool read_jboolean(struct ps_prochandle* ph, uintptr_t addr, jboolean* pvalue) {
+    jboolean 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;
@@ -1276,7 +1276,7 @@
           return false;
        if (i < size - 1)
           buf[i] = c;
-@@ -504,12 +505,12 @@
+@@ -507,12 +508,12 @@
  }
  
  static bool core_get_lwp_regs(struct ps_prochandle* ph, lwpid_t lwp_id,
@@ -1291,7 +1291,7 @@
         return true;
       }
       thr = thr->next;
-@@ -517,6 +518,13 @@
+@@ -520,6 +521,13 @@
     return false;
  }
  
@@ -1305,7 +1305,7 @@
  static ps_prochandle_ops core_ops = {
     .release=  core_release,
     .p_pread=  core_read_data,
-@@ -536,52 +544,52 @@
+@@ -539,52 +547,52 @@
        return false;
  
     // copy regs
@@ -1395,7 +1395,7 @@
  #endif
     }
  
-@@ -823,7 +831,7 @@
+@@ -826,7 +834,7 @@
  
     dyn.d_tag = DT_NULL;
     while (dyn.d_tag != DT_DEBUG) {
@@ -1404,7 +1404,7 @@
           print_debug("can't read debug info from _DYNAMIC\n");
           return false;
        }
-@@ -833,19 +841,23 @@
+@@ -836,19 +844,23 @@
     // 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
@@ -1430,7 +1430,7 @@
  
     print_debug("interpreter base address is 0x%lx\n", ld_base_addr);
  
-@@ -867,14 +879,14 @@
+@@ -870,14 +882,14 @@
        // 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.
  
@@ -1447,7 +1447,7 @@
                      &lib_name_addr, sizeof(uintptr_t)) != PS_OK) {
           print_debug("can't read address of shared object name\n");
           return false;
-@@ -918,7 +930,7 @@
+@@ -921,7 +933,7 @@
        }
  
        // read next link_map address
@@ -1456,7 +1456,7 @@
                          &link_map_addr, sizeof(uintptr_t)) != PS_OK) {
           print_debug("can't read next link in link_map\n");
           return false;
-@@ -932,7 +944,6 @@
+@@ -935,7 +947,6 @@
  struct ps_prochandle* Pgrab_core(const char* exec_file, const char* core_file) {
     ELF_EHDR core_ehdr;
     ELF_EHDR exec_ehdr;
@@ -1465,8 +1465,8 @@
     struct ps_prochandle* ph = (struct ps_prochandle*) calloc(1, sizeof(struct ps_prochandle));
     if (ph == NULL) {
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/ps_proc.c	2009-10-27 12:42:39.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/ps_proc.c	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/ps_proc.c	2010-04-17 21:48:07.000000000 +0400
 @@ -22,20 +22,22 @@
   *
   */
@@ -1957,8 +1957,8 @@
    return ph;
  }
 diff -uNr ../orig/hotspot/agent/src/os/bsd/salibelf.c ./hotspot/agent/src/os/bsd/salibelf.c
---- ../orig/hotspot/agent/src/os/bsd/salibelf.c	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/salibelf.c	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/salibelf.c	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/salibelf.c	2010-04-17 21:48:07.000000000 +0400
 @@ -25,6 +25,7 @@
  #include "salibelf.h"
  #include <stdlib.h>
@@ -1968,8 +1968,8 @@
  extern void print_debug(const char*,...);
  
 diff -uNr ../orig/hotspot/agent/src/os/bsd/symtab.c ./hotspot/agent/src/os/bsd/symtab.c
---- ../orig/hotspot/agent/src/os/bsd/symtab.c	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/symtab.c	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/symtab.c	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/symtab.c	2010-04-17 21:48:07.000000000 +0400
 @@ -23,13 +23,14 @@
   */
  
@@ -2065,8 +2065,8 @@
        }
        // the symbol table
 diff -uNr ../orig/hotspot/agent/src/os/bsd/test.c ./hotspot/agent/src/os/bsd/test.c
---- ../orig/hotspot/agent/src/os/bsd/test.c	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/os/bsd/test.c	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/os/bsd/test.c	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/agent/src/os/bsd/test.c	2010-04-17 21:48:07.000000000 +0400
 @@ -44,7 +44,7 @@
        }
  
@@ -2077,8 +2077,8 @@
        }
     }
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdCDebugger.java	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdCDebugger.java	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdCDebugger.java	2010-04-17 21:48:07.000000000 +0400
 @@ -30,10 +30,8 @@
  import sun.jvm.hotspot.debugger.cdbg.*;
  import sun.jvm.hotspot.debugger.x86.*;
@@ -2105,8 +2105,8 @@
         throw new DebuggerException(cpu + " is not yet supported");
      }
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThreadContextFactory.java	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThreadContextFactory.java	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThreadContextFactory.java	2010-04-17 21:48:07.000000000 +0400
 @@ -26,9 +26,7 @@
  
  import sun.jvm.hotspot.debugger.*;
@@ -2129,8 +2129,8 @@
           throw new RuntimeException("cpu " + cpu + " is not yet supported");
        }
 diff -uNr ../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-10-14 10:13:12.000000000 -0700
-+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/Threads.java	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/Threads.java	2010-04-15 11:31:18.000000000 +0400
++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/Threads.java	2010-04-17 21:48:07.000000000 +0400
 @@ -37,6 +37,8 @@
  import sun.jvm.hotspot.runtime.linux_ia64.LinuxIA64JavaThreadPDAccess;
  import sun.jvm.hotspot.runtime.linux_amd64.LinuxAMD64JavaThreadPDAccess;
@@ -2155,8 +2155,8 @@
  
          if (access == null) {
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd/BsdSignals.java	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd/BsdSignals.java	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd/BsdSignals.java	2010-04-17 21:48:07.000000000 +0400
 @@ -28,37 +28,36 @@
    private static String[] signalNames = {
      "",           /* No signal 0 */
@@ -2218,8 +2218,8 @@
  
    public static String getSignalName(int sigNum) {
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd_x86/BsdSignals.java	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd_x86/BsdSignals.java	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd_x86/BsdSignals.java	2010-04-17 21:48:07.000000000 +0400
 @@ -32,33 +32,32 @@
      "SIGQUIT",    /* quit (ASCII FS) */
      "SIGILL",     /* illegal instruction (not reset when caught) */
@@ -2274,8 +2274,8 @@
  
    public static String getSignalName(int sigNum) {
 diff -uNr ../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-10-14 10:13:12.000000000 -0700
-+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/PlatformInfo.java	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/PlatformInfo.java	2010-04-15 11:31:19.000000000 +0400
++++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/PlatformInfo.java	2010-04-17 21:48:07.000000000 +0400
 @@ -37,6 +37,14 @@
        return "solaris";
      } else if (os.equals("Linux")) {
@@ -2292,13 +2292,26 @@
        return "win32";
      } else {
 diff -uNr ../orig/hotspot/make/Makefile ./hotspot/make/Makefile
---- ../orig/hotspot/make/Makefile	2009-10-14 10:13:13.000000000 -0700
-+++ ./hotspot/make/Makefile	2009-10-22 22:39:44.000000000 -0700
-@@ -265,6 +265,19 @@
- 
+--- ../orig/hotspot/make/Makefile	2010-04-15 11:31:19.000000000 +0400
++++ ./hotspot/make/Makefile	2010-04-17 21:48:07.000000000 +0400
+@@ -290,11 +290,32 @@
  # Shared Library
  ifneq ($(OSNAME),windows)
-+ifeq ($(OSNAME),bsd)
+   ifeq ($(ZERO_BUILD), true)
++    ifeq ($(OSNAME),bsd)
++# BSD-specific LIBRARY_SUFFIX build option
++$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
++	$(install-file)
++$(EXPORT_SERVER_DIR)/%.$(LIBRARY_SUFFIX):       $(ZERO_DIR)/%.$(LIBRARY_SUFFIX)
++	$(install-file)
++    else
+ $(EXPORT_JRE_LIB_ARCH_DIR)/%.so: $(ZERO_DIR)/%.so
+ 	$(install-file)
+ $(EXPORT_SERVER_DIR)/%.so:       $(ZERO_DIR)/%.so
+ 	$(install-file)
++    endif
+   else
++    ifeq ($(OSNAME),bsd)
 +# BSD-specific LIBRARY_SUFFIX build option
 +$(EXPORT_JRE_LIB_ARCH_DIR)/%.$(LIBRARY_SUFFIX): $(C2_DIR)/%.$(LIBRARY_SUFFIX)
 +	$(install-file)
@@ -2310,22 +2323,22 @@
 +	$(install-file)
 +$(EXPORT_SERVER_DIR)/64/%.$(LIBRARY_SUFFIX):    $(C2_DIR)/%.$(LIBRARY_SUFFIX)
 +	$(install-file)
-+else
++    else
  $(EXPORT_JRE_LIB_ARCH_DIR)/%.so: $(C2_DIR)/%.so
  	$(install-file)
  $(EXPORT_CLIENT_DIR)/%.so:       $(C1_DIR)/%.so
-@@ -276,6 +289,7 @@
+@@ -305,6 +326,7 @@
+ 	$(install-file)
  $(EXPORT_SERVER_DIR)/64/%.so:    $(C2_DIR)/%.so
  	$(install-file)
++    endif
+   endif
  endif
-+endif
  
- # Jar file (sa-jdi.jar)
- $(EXPORT_LIB_DIR)/%.jar: $(GEN_DIR)/%.jar
 diff -uNr ../orig/hotspot/make/bsd/Makefile ./hotspot/make/bsd/Makefile
---- ../orig/hotspot/make/bsd/Makefile	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/Makefile	2009-10-30 20:37:39.000000000 -0700
-@@ -203,7 +203,10 @@
+--- ../orig/hotspot/make/bsd/Makefile	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/Makefile	2010-04-17 21:48:07.000000000 +0400
+@@ -220,7 +220,10 @@
  # Solaris 2.5.1, 2.6).
  # Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok.
  
@@ -2338,9 +2351,9 @@
  EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION))
  
 diff -uNr ../orig/hotspot/make/bsd/makefiles/buildtree.make ./hotspot/make/bsd/makefiles/buildtree.make
---- ../orig/hotspot/make/bsd/makefiles/buildtree.make	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/makefiles/buildtree.make	2009-10-22 23:09:23.000000000 -0700
-@@ -277,10 +277,11 @@
+--- ../orig/hotspot/make/bsd/makefiles/buildtree.make	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/makefiles/buildtree.make	2010-04-17 21:48:07.000000000 +0400
+@@ -287,10 +287,11 @@
  	[ -n "$$JAVA_HOME" ] && { echo ": \$${JAVA_HOME:=$${JAVA_HOME}}"; }; \
  	{ \
  	echo "LD_LIBRARY_PATH=.:$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}\$${JAVA_HOME}/jre/lib/${LIBARCH}/native_threads:\$${JAVA_HOME}/jre/lib/${LIBARCH}:${GCC_LIB}"; \
@@ -2354,8 +2367,8 @@
  
  env.csh: env.sh
 diff -uNr ../orig/hotspot/make/bsd/makefiles/cscope.make ./hotspot/make/bsd/makefiles/cscope.make
---- ../orig/hotspot/make/bsd/makefiles/cscope.make	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/makefiles/cscope.make	2009-10-22 23:09:31.000000000 -0700
+--- ../orig/hotspot/make/bsd/makefiles/cscope.make	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/makefiles/cscope.make	2010-04-17 21:48:07.000000000 +0400
 @@ -71,7 +71,7 @@
  # OS-specific files for other systems are excluded by default.  Use CS_OS=yes
  # to include platform-specific files for other platforms.
@@ -2366,8 +2379,8 @@
  endif
  
 diff -uNr ../orig/hotspot/make/bsd/makefiles/defs.make ./hotspot/make/bsd/makefiles/defs.make
---- ../orig/hotspot/make/bsd/makefiles/defs.make	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/makefiles/defs.make	2009-10-22 23:09:40.000000000 -0700
+--- ../orig/hotspot/make/bsd/makefiles/defs.make	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/makefiles/defs.make	2010-04-17 21:48:07.000000000 +0400
 @@ -28,6 +28,14 @@
  
  SLASH_JAVA ?= /java
@@ -2383,7 +2396,7 @@
  # Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name
  ARCH:=$(shell uname -m)
  PATH_SEP = :
-@@ -79,6 +87,31 @@
+@@ -90,6 +98,31 @@
    endif
  endif
  
@@ -2415,7 +2428,7 @@
  # i686
  ifeq ($(ARCH), i686)
    ARCH_DATA_MODEL  = 32
-@@ -95,19 +128,13 @@
+@@ -106,21 +139,17 @@
  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
@@ -2423,27 +2436,30 @@
 -EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.so
 +EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjsig.$(LIBRARY_SUFFIX)
 +EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
- ifeq ($(ARCH_DATA_MODEL), 32)
-   EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
-   EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
--  EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjsig.so
--  EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.so 
--  EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.so
--  EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar 
--else
--  ifeq ($(ARCH),ia64)
--    else
--      EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.so
--      EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar
+ ifneq ($(ZERO_BUILD), true)
+   ifeq ($(ARCH_DATA_MODEL), 32)
+     EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
+     EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
+-    EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjsig.so
+-    EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.so 
+-    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.so
++    EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjsig.$(LIBRARY_SUFFIX)
++    EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
++    EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX)
+     EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar 
+-  else
+-    ifeq ($(ARCH),ia64)
+-      else
+-        EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.so
+-        EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar
 -    endif
-+  EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjsig.$(LIBRARY_SUFFIX)
-+  EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
+   endif
++  EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX)
++  EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar
  endif
-+EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.so
-+EXPORT_LIST += $(EXPORT_LIB_DIR)/sa-jdi.jar
 diff -uNr ../orig/hotspot/make/bsd/makefiles/gcc.make ./hotspot/make/bsd/makefiles/gcc.make
---- ../orig/hotspot/make/bsd/makefiles/gcc.make	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/makefiles/gcc.make	2009-10-22 23:09:50.000000000 -0700
+--- ../orig/hotspot/make/bsd/makefiles/gcc.make	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/makefiles/gcc.make	2010-04-17 21:48:07.000000000 +0400
 @@ -22,12 +22,15 @@
  #  
  #
@@ -2463,7 +2479,7 @@
  
  # -dumpversion in gcc-2.91 shows "egcs-2.91.66". In later version, it only
  # prints the numbers (e.g. "2.95", "3.2.1")
-@@ -55,7 +58,7 @@
+@@ -58,7 +61,7 @@
  CFLAGS += $(VM_PICFLAG)
  CFLAGS += -fno-rtti
  CFLAGS += -fno-exceptions
@@ -2472,9 +2488,9 @@
  CFLAGS += -fcheck-new
  
  ARCHFLAG = $(ARCHFLAG/$(BUILDARCH))
-@@ -65,6 +68,15 @@
- ARCHFLAG/sparc   = -m32 -mcpu=v9
+@@ -69,6 +72,15 @@
  ARCHFLAG/sparcv9 = -m64 -mcpu=v9
+ ARCHFLAG/zero    = $(ZERO_ARCHFLAG)
  
 +# Darwin-specific build flags
 +ifeq ($(OS_VENDOR), Darwin)
@@ -2488,7 +2504,7 @@
  CFLAGS     += $(ARCHFLAG)
  AOUT_FLAGS += $(ARCHFLAG)
  LFLAGS     += $(ARCHFLAG)
-@@ -98,6 +110,11 @@
+@@ -102,6 +114,11 @@
  CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(ACCEPTABLE_WARNINGS)
  # Special cases
  CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@)) 
@@ -2500,13 +2516,17 @@
  
  # The flags to use for an Optimized g++ build
  OPT_CFLAGS += -O3
-@@ -133,20 +150,40 @@
+@@ -137,9 +154,6 @@
  LFLAGS += -Wl,-relax
  endif
  
 -# Enable linker optimization
 -LFLAGS += -Xlinker -O1
 -
+ # If this is a --hash-style=gnu system, use --hash-style=both
+ #   The gnu .hash section won't work on some Bsd systems like SuSE 10.
+ _HAS_HASH_STYLE_GNU:=$(shell $(CC) -dumpspecs | grep -- '--hash-style=gnu')
+@@ -151,14 +165,37 @@
  # Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file.
  MAPFLAG = -Xlinker --version-script=FILENAME
  
@@ -2551,8 +2571,8 @@
  #------------------------------------------------------------------------
  # Debug flags
 diff -uNr ../orig/hotspot/make/bsd/makefiles/jsig.make ./hotspot/make/bsd/makefiles/jsig.make
---- ../orig/hotspot/make/bsd/makefiles/jsig.make	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/makefiles/jsig.make	2009-10-22 23:10:43.000000000 -0700
+--- ../orig/hotspot/make/bsd/makefiles/jsig.make	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/makefiles/jsig.make	2010-04-17 21:48:07.000000000 +0400
 @@ -26,7 +26,12 @@
  
  # libjsig[_g].so: signal interposition library
@@ -2567,16 +2587,7 @@
  
  JSIGSRCDIR = $(GAMMADIR)/src/os/$(Platform_os_family)/vm
  
-@@ -39,7 +44,7 @@
- # cause problems with interposing. See CR: 6466665
- # LFLAGS_JSIG += $(MAPFLAG:FILENAME=$(LIBJSIG_MAPFILE))
- 
--LFLAGS_JSIG += -D_GNU_SOURCE -D_REENTRANT
-+LFLAGS_JSIG += -D_GNU_SOURCE -pthread
- 
- # DEBUG_BINARIES overrides everything, use full -g debug information
- ifeq ($(DEBUG_BINARIES), true)
-@@ -49,7 +54,7 @@
+@@ -54,7 +59,7 @@
  $(LIBJSIG): $(JSIGSRCDIR)/jsig.c $(LIBJSIG_MAPFILE)
  	@echo Making signal interposition lib...
  	$(QUIETLY) $(CC) $(SYMFLAG) $(ARCHFLAG) $(SHARED_FLAG) $(PICFLAG) \
@@ -2586,8 +2597,8 @@
  install_jsig: $(LIBJSIG)
  	@echo "Copying $(LIBJSIG) to $(DEST_JSIG)"
 diff -uNr ../orig/hotspot/make/bsd/makefiles/launcher.make ./hotspot/make/bsd/makefiles/launcher.make
---- ../orig/hotspot/make/bsd/makefiles/launcher.make	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/makefiles/launcher.make	2009-10-22 23:11:00.000000000 -0700
+--- ../orig/hotspot/make/bsd/makefiles/launcher.make	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/makefiles/launcher.make	2010-04-17 21:48:07.000000000 +0400
 @@ -44,7 +44,7 @@
    LIBS_LAUNCHER             += $(STATIC_STDCXX) $(LIBS)
  else
@@ -2598,8 +2609,8 @@
  endif
  
 diff -uNr ../orig/hotspot/make/bsd/makefiles/sa.make ./hotspot/make/bsd/makefiles/sa.make
---- ../orig/hotspot/make/bsd/makefiles/sa.make	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/makefiles/sa.make	2009-10-22 23:11:31.000000000 -0700
+--- ../orig/hotspot/make/bsd/makefiles/sa.make	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/makefiles/sa.make	2010-04-17 21:48:07.000000000 +0400
 @@ -42,8 +42,8 @@
  
  # gnumake 3.78.1 does not accept the *s that
@@ -2612,8 +2623,8 @@
  SA_CLASSDIR = $(GENERATED)/saclasses
  
 diff -uNr ../orig/hotspot/make/bsd/makefiles/saproc.make ./hotspot/make/bsd/makefiles/saproc.make
---- ../orig/hotspot/make/bsd/makefiles/saproc.make	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/makefiles/saproc.make	2009-10-22 23:14:56.000000000 -0700
+--- ../orig/hotspot/make/bsd/makefiles/saproc.make	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/makefiles/saproc.make	2010-04-17 21:48:07.000000000 +0400
 @@ -26,7 +26,12 @@
  
  # libsaproc[_g].so: serviceability agent
@@ -2638,7 +2649,7 @@
  SAMAPFILE = $(SASRCDIR)/mapfile
 @@ -58,6 +64,25 @@
  
- SA_LFLAGS = $(MAPFLAG:FILENAME=$(SAMAPFILE))
+ SA_LFLAGS = $(MAPFLAG:FILENAME=$(SAMAPFILE)) $(LDFLAGS_HASH_STYLE)
  
 +# This is needed to avoid picking up the proc_service.h
 +# header in SASRCDIR. We want to use the system provided one.
@@ -2681,9 +2692,9 @@
  
  install_saproc: checkAndBuildSA
 diff -uNr ../orig/hotspot/make/bsd/makefiles/vm.make ./hotspot/make/bsd/makefiles/vm.make
---- ../orig/hotspot/make/bsd/makefiles/vm.make	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/makefiles/vm.make	2009-10-22 23:15:49.000000000 -0700
-@@ -95,7 +95,7 @@
+--- ../orig/hotspot/make/bsd/makefiles/vm.make	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/makefiles/vm.make	2010-04-17 21:48:07.000000000 +0400
+@@ -99,7 +99,7 @@
  # Extra flags from gnumake's invocation or environment
  CFLAGS += $(EXTRA_CFLAGS)
  
@@ -2692,7 +2703,7 @@
  
  # By default, link the *.o into the library, not the executable.
  LINK_INTO$(LINK_INTO) = LIBJVM
-@@ -110,7 +110,11 @@
+@@ -114,7 +114,11 @@
  # JVM
  
  JVM    = jvm$(G_SUFFIX)
@@ -2705,33 +2716,21 @@
  
  JVM_OBJ_FILES = $(Obj_Files)
  
-@@ -124,7 +128,7 @@
+@@ -128,11 +132,8 @@
  	rm -f $@
  	cat $^ > $@
  
--STATIC_CXX = true
+-ifeq ($(ZERO_LIBARCH), ppc64)
+-  STATIC_CXX = false
+-else
+-  STATIC_CXX = true
+-endif
++# On BSD shared object could not be linked with static libstd++
 +STATIC_CXX = false
  
  ifeq ($(LINK_INTO),AOUT)
    LIBJVM.o                 =
-@@ -142,14 +146,14 @@
-   ifeq ($(STATIC_CXX), true)
-     LFLAGS_VM              += $(STATIC_LIBGCC)
-     LIBS_VM                += $(STATIC_STDCXX)
-+    LINK_VM                = $(LINK_LIB.c)
-   else
--    LIBS_VM                += -lstdc++
-+    LINK_VM                = $(LINK_LIB.CC)
-   endif
- 
-   LIBS_VM                  += $(LIBS)
- endif
- 
--LINK_VM = $(LINK_LIB.c)
- 
- # rule for building precompiled header
- $(PRECOMPILED_HEADER): $(Precompiled_Files)
-@@ -177,11 +181,6 @@
+@@ -188,11 +189,6 @@
  LD_SCRIPT_FLAG = -Wl,-T,$(LD_SCRIPT)
  endif
  
@@ -2744,8 +2743,8 @@
  	$(QUIETLY) {                                                    \
  	    echo Linking vm...;                                         \
 diff -uNr ../orig/hotspot/make/bsd/platform_amd64 ./hotspot/make/bsd/platform_amd64
---- ../orig/hotspot/make/bsd/platform_amd64	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/platform_amd64	2009-10-27 10:42:02.000000000 -0700
+--- ../orig/hotspot/make/bsd/platform_amd64	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/platform_amd64	2010-04-17 21:48:07.000000000 +0400
 @@ -12,4 +12,6 @@
  
  compiler = gcc
@@ -2755,8 +2754,8 @@
 +
 +sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DAMD64
 diff -uNr ../orig/hotspot/make/bsd/platform_i486 ./hotspot/make/bsd/platform_i486
---- ../orig/hotspot/make/bsd/platform_i486	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/make/bsd/platform_i486	2009-10-27 10:42:19.000000000 -0700
+--- ../orig/hotspot/make/bsd/platform_i486	2010-04-17 21:43:54.000000000 +0400
++++ ./hotspot/make/bsd/platform_i486	2010-04-17 21:48:07.000000000 +0400
 @@ -12,4 +12,6 @@
  
  compiler = gcc
@@ -2766,8 +2765,8 @@
 +
 +sysdefs = -D_ALLBSD_SOURCE -D_GNU_SOURCE -DIA32
 diff -uNr ../orig/hotspot/make/defs.make ./hotspot/make/defs.make
---- ../orig/hotspot/make/defs.make	2009-10-14 10:13:13.000000000 -0700
-+++ ./hotspot/make/defs.make	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/hotspot/make/defs.make	2010-04-15 11:31:19.000000000 +0400
++++ ./hotspot/make/defs.make	2010-04-17 21:48:07.000000000 +0400
 @@ -119,13 +119,23 @@
  # Windows should have OS predefined
  ifeq ($(OS),)
@@ -2795,8 +2794,8 @@
      OSNAME=solaris
    endif
 diff -uNr ../orig/hotspot/make/sa.files ./hotspot/make/sa.files
---- ../orig/hotspot/make/sa.files	2009-10-14 10:13:13.000000000 -0700
-+++ ./hotspot/make/sa.files	2009-10-22 23:23:20.000000000 -0700
+--- ../orig/hotspot/make/sa.files	2010-04-15 11:31:19.000000000 +0400
++++ ./hotspot/make/sa.files	2010-04-17 21:48:07.000000000 +0400
 @@ -59,6 +59,9 @@
  $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/dbx/x86/*.java \
  $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/dummy/*.java \
@@ -2817,21 +2816,9 @@
  $(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 -uNr ../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-10-14 10:13:14.000000000 -0700
-+++ ./hotspot/src/cpu/x86/vm/interpreterRT_x86_32.cpp	2009-10-21 21:36:22.000000000 -0700
-@@ -110,7 +110,7 @@
-   virtual void pass_object() {
-     // pass address of from
-     intptr_t from_addr = (intptr_t)(_from + Interpreter::local_offset_in_bytes(0));
--    *_to++ = (*(intptr_t*)from_addr == 0) ? NULL : from_addr;
-+    *_to++ = (*(intptr_t*)from_addr == 0) ? NULL_WORD : from_addr;
-     debug_only(verify_tag(frame::TagReference));
-     _from -= Interpreter::stackElementSize();
-    }
 diff -uNr ../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-10-14 10:13:14.000000000 -0700
-+++ ./hotspot/src/cpu/x86/vm/jni_x86.h	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/cpu/x86/vm/jni_x86.h	2010-04-15 11:31:20.000000000 +0400
++++ ./hotspot/src/cpu/x86/vm/jni_x86.h	2010-04-17 21:48:07.000000000 +0400
 @@ -26,7 +26,7 @@
  #ifndef _JAVASOFT_JNI_MD_H_
  #define _JAVASOFT_JNI_MD_H_
@@ -2841,105 +2828,9 @@
    #define JNIEXPORT
    #define JNIIMPORT
    #define JNICALL
-diff -uNr ../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-10-14 10:13:14.000000000 -0700
-+++ ./hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp	2009-10-21 21:43:09.000000000 -0700
-@@ -472,7 +472,7 @@
-     // setup rax & rdx, remove return address & clear pending exception
-     __ pop(rdx);
-     __ movptr(rax, Address(r15_thread, Thread::pending_exception_offset()));
--    __ movptr(Address(r15_thread, Thread::pending_exception_offset()), (int)NULL_WORD);
-+    __ movptr(Address(r15_thread, Thread::pending_exception_offset()), (int32_t)NULL_WORD);
- 
- #ifdef ASSERT
-     // make sure exception is set
-@@ -954,9 +954,9 @@
-     __ jcc(Assembler::zero, exit); // if obj is NULL it is OK
-     // Check if the oop is in the right area of memory
-     __ movptr(c_rarg2, rax);
--    __ movptr(c_rarg3, (int64_t) Universe::verify_oop_mask());
-+    __ movptr(c_rarg3, (intptr_t) Universe::verify_oop_mask());
-     __ andptr(c_rarg2, c_rarg3);
--    __ movptr(c_rarg3, (int64_t) Universe::verify_oop_bits());
-+    __ movptr(c_rarg3, (intptr_t) Universe::verify_oop_bits());
-     __ cmpptr(c_rarg2, c_rarg3);
-     __ jcc(Assembler::notZero, error);
- 
-@@ -969,9 +969,9 @@
-     __ jcc(Assembler::zero, error); // if klass is NULL it is broken
-     // Check if the klass is in the right area of memory
-     __ mov(c_rarg2, rax);
--    __ movptr(c_rarg3, (int64_t) Universe::verify_klass_mask());
-+    __ movptr(c_rarg3, (intptr_t) Universe::verify_klass_mask());
-     __ andptr(c_rarg2, c_rarg3);
--    __ movptr(c_rarg3, (int64_t) Universe::verify_klass_bits());
-+    __ movptr(c_rarg3, (intptr_t) Universe::verify_klass_bits());
-     __ cmpptr(c_rarg2, c_rarg3);
-     __ jcc(Assembler::notZero, error);
- 
-@@ -980,9 +980,9 @@
-     __ testptr(rax, rax);
-     __ jcc(Assembler::zero, error); // if klass' klass is NULL it is broken
-     // Check if the klass' klass is in the right area of memory
--    __ movptr(c_rarg3, (int64_t) Universe::verify_klass_mask());
-+    __ movptr(c_rarg3, (intptr_t) Universe::verify_klass_mask());
-     __ andptr(rax, c_rarg3);
--    __ movptr(c_rarg3, (int64_t) Universe::verify_klass_bits());
-+    __ movptr(c_rarg3, (intptr_t) Universe::verify_klass_bits());
-     __ cmpptr(rax, c_rarg3);
-     __ jcc(Assembler::notZero, error);
- 
-diff -uNr ../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-10-14 10:13:14.000000000 -0700
-+++ ./hotspot/src/cpu/x86/vm/x86_32.ad	2009-10-21 21:47:54.000000000 -0700
-@@ -3371,7 +3371,7 @@
-          masm.movptr(Address(boxReg, 0), 3) ;            // results in ST-before-CAS penalty
-          masm.get_thread (scrReg) ;
-          masm.movptr(boxReg, tmpReg);                    // consider: LEA box, [tmp-2]
--         masm.movptr(tmpReg, 0);                         // consider: xor vs mov
-+         masm.movptr(tmpReg, NULL_WORD);                         // consider: xor vs mov
-          if (os::is_MP()) { masm.lock(); }
-          masm.cmpxchgptr(scrReg, Address(boxReg, ObjectMonitor::owner_offset_in_bytes()-2)) ;
-       } else
-@@ -3387,7 +3387,7 @@
- 
-          if ((EmitSync & 64) == 0) {
-            // Optimistic form: consider XORL tmpReg,tmpReg
--           masm.movptr(tmpReg, 0 ) ;
-+           masm.movptr(tmpReg, NULL_WORD ) ;
-          } else {
-            // Can suffer RTS->RTO upgrades on shared or cold $ lines
-            // Test-And-CAS instead of CAS
-@@ -3587,7 +3587,7 @@
-          masm.orptr(boxReg, Address (tmpReg, ObjectMonitor::EntryList_offset_in_bytes()-2)) ;
-          masm.orptr(boxReg, Address (tmpReg, ObjectMonitor::cxq_offset_in_bytes()-2)) ;
-          masm.jccb  (Assembler::notZero, DONE_LABEL) ;
--         masm.movptr(Address (tmpReg, ObjectMonitor::owner_offset_in_bytes()-2), 0) ;
-+         masm.movptr(Address (tmpReg, ObjectMonitor::owner_offset_in_bytes()-2), NULL_WORD) ;
-          masm.jmpb  (DONE_LABEL) ;
-       } else {
-          masm.xorptr(boxReg, Address (tmpReg, ObjectMonitor::owner_offset_in_bytes()-2)) ;
-@@ -3596,7 +3596,7 @@
-          masm.movptr(boxReg, Address (tmpReg, ObjectMonitor::EntryList_offset_in_bytes()-2)) ;
-          masm.orptr(boxReg, Address (tmpReg, ObjectMonitor::cxq_offset_in_bytes()-2)) ;
-          masm.jccb  (Assembler::notZero, CheckSucc) ;
--         masm.movptr(Address (tmpReg, ObjectMonitor::owner_offset_in_bytes()-2), 0) ;
-+         masm.movptr(Address (tmpReg, ObjectMonitor::owner_offset_in_bytes()-2), NULL_WORD) ;
-          masm.jmpb  (DONE_LABEL) ;
-       }
- 
-@@ -3644,7 +3644,7 @@
-          // We currently use (3), although it's likely that switching to (2)
-          // is correct for the future.
- 
--         masm.movptr(Address (tmpReg, ObjectMonitor::owner_offset_in_bytes()-2), 0) ;
-+         masm.movptr(Address (tmpReg, ObjectMonitor::owner_offset_in_bytes()-2), NULL_WORD) ;
-          if (os::is_MP()) {
-             if (VM_Version::supports_sse2() && 1 == FenceInstruction) {
-               masm.mfence();
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/launcher/java_md.c	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os/bsd/launcher/java_md.c	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/launcher/java_md.c	2010-04-17 21:48:07.000000000 +0400
 @@ -45,8 +45,15 @@
  #include "version_comp.h"
  #endif
@@ -3051,8 +2942,8 @@
  #else
    if (_launcher_debug) {
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/attachListener_bsd.cpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os/bsd/vm/attachListener_bsd.cpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/attachListener_bsd.cpp	2010-04-17 21:48:07.000000000 +0400
 @@ -179,32 +179,20 @@
    struct sockaddr_un addr;
    addr.sun_family = AF_UNIX;
@@ -3147,8 +3038,8 @@
      // simple check to avoid starting the attach mechanism when
      // a bogus user creates the file
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/hpi_bsd.cpp	2009-11-03 17:19:13.000000000 -0800
+--- ../orig/hotspot/src/os/bsd/vm/hpi_bsd.cpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/hpi_bsd.cpp	2010-04-17 21:48:07.000000000 +0400
 @@ -28,6 +28,14 @@
  # include <sys/param.h>
  # include <dlfcn.h>
@@ -3179,8 +3070,8 @@
  
        *(strrchr(buf, '/')) = '\0';  /* get rid of /libjvm.so */
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/hpi_bsd.hpp	2009-11-03 17:19:08.000000000 -0800
+--- ../orig/hotspot/src/os/bsd/vm/hpi_bsd.hpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/hpi_bsd.hpp	2010-04-17 21:48:07.000000000 +0400
 @@ -36,7 +36,7 @@
  // HPI_FileInterface
  
@@ -3232,8 +3123,8 @@
  
  
 diff -uNr ../orig/hotspot/src/os/bsd/vm/jsig.c ./hotspot/src/os/bsd/vm/jsig.c
---- ../orig/hotspot/src/os/bsd/vm/jsig.c	2009-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/jsig.c	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os/bsd/vm/jsig.c	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/jsig.c	2010-04-17 21:48:07.000000000 +0400
 @@ -143,7 +143,8 @@
  }
  
@@ -3245,8 +3136,8 @@
  
  static int call_os_sigaction(int sig, const struct sigaction  *act,
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/jvm_bsd.cpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os/bsd/vm/jvm_bsd.cpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/jvm_bsd.cpp	2010-04-17 21:48:07.000000000 +0400
 @@ -138,44 +138,37 @@
  
  struct siglabel siglabels[] = {
@@ -3304,8 +3195,8 @@
  
  JVM_ENTRY_NO_ENV(jint, JVM_FindSignal(const char *name))
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/jvm_bsd.h	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os/bsd/vm/jvm_bsd.h	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/jvm_bsd.h	2010-04-17 21:48:07.000000000 +0400
 @@ -51,7 +51,11 @@
  #define AGENT_ONATTACH_SYMBOLS  {"Agent_OnAttach"}
  
@@ -3340,8 +3231,8 @@
  
  // Reconciliation History
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/osThread_bsd.cpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os/bsd/vm/osThread_bsd.cpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/osThread_bsd.cpp	2010-04-17 21:48:07.000000000 +0400
 @@ -28,8 +28,8 @@
  
  void OSThread::pd_initialize() {
@@ -3354,8 +3245,8 @@
    _ucontext = NULL;
    _expanding_stack = 0;
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/osThread_bsd.hpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os/bsd/vm/osThread_bsd.hpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/osThread_bsd.hpp	2010-04-17 21:48:07.000000000 +0400
 @@ -36,6 +36,12 @@
  
   private:
@@ -3436,8 +3327,8 @@
    // Platform dependent initialization and cleanup
    // ***************************************************************
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/os_bsd.cpp	2009-11-03 17:39:29.000000000 -0800
+--- ../orig/hotspot/src/os/bsd/vm/os_bsd.cpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/os_bsd.cpp	2010-04-17 21:48:07.000000000 +0400
 @@ -42,17 +42,39 @@
  # include <sys/utsname.h>
  # include <sys/socket.h>
@@ -3545,8 +3436,8 @@
 +#endif
  
  // Cpu architecture string
- #if   defined(IA64)
-@@ -193,6 +226,7 @@
+ #if   defined(ZERO)
+@@ -195,6 +228,7 @@
  #endif
  
  
@@ -3554,7 +3445,7 @@
  // pid_t gettid()
  //
  // Returns the kernel thread id of the currently running thread. Kernel
-@@ -219,7 +253,47 @@
+@@ -221,7 +255,47 @@
  static const char *unstable_chroot_error = "/proc file system not found.\n"
                       "Java may be unstable running multithreaded in a chroot "
                       "environment on Bsd when /proc filesystem is not mounted.";
@@ -3602,7 +3493,7 @@
  void os::Bsd::initialize_system_info() {
    _processor_count = sysconf(_SC_NPROCESSORS_CONF);
    if (_processor_count == 1) {
-@@ -236,6 +310,7 @@
+@@ -238,6 +312,7 @@
    _physical_memory = (julong)sysconf(_SC_PHYS_PAGES) * (julong)sysconf(_SC_PAGESIZE);
    assert(_processor_count > 0, "bsd error");
  }
@@ -3610,17 +3501,20 @@
  
  void os::init_system_properties_values() {
  //  char arch[12];
-@@ -279,7 +354,9 @@
+@@ -281,10 +356,8 @@
   *        ...
   *        7: The default directories, normally /lib and /usr/lib.
   */
+-#if defined(AMD64) || defined(_LP64) && (defined(SPARC) || defined(PPC) || defined(S390))
+-#define DEFAULT_LIBPATH "/usr/lib64:/lib64:/lib:/usr/lib"
+-#else
+-#define DEFAULT_LIBPATH "/lib:/usr/lib"
 +#ifndef DEFAULT_LIBPATH
- #define DEFAULT_LIBPATH "/lib:/usr/lib"
-+#endif
++#define DEFAULT_LIBPATH "/lib:/usr/lib:/usr/local/lib:/usr/local/lib"
+ #endif
  
  #define EXTENSIONS_DIR  "/lib/ext"
- #define ENDORSED_DIR    "/lib/endorsed"
-@@ -356,7 +433,11 @@
+@@ -362,7 +435,11 @@
           * should always exist (until the legacy problem cited above is
           * addressed).
           */
@@ -3632,7 +3526,7 @@
          if (v != NULL) {
              char *t = ld_library_path;
              /* That's +1 for the colon and +1 for the trailing '\0' */
-@@ -515,6 +596,7 @@
+@@ -521,6 +598,7 @@
    }
  }
  
@@ -3640,7 +3534,7 @@
  //////////////////////////////////////////////////////////////////////////////
  // detecting pthread library
  
-@@ -567,15 +649,15 @@
+@@ -573,15 +651,15 @@
    }
  
    if (strstr(libpthread_version(), "NPTL")) {
@@ -3659,7 +3553,7 @@
    }
  }
  
-@@ -678,6 +760,7 @@
+@@ -684,6 +762,7 @@
    }
    return false;
  }
@@ -3667,7 +3561,7 @@
  
  //////////////////////////////////////////////////////////////////////////////
  // create new thread
-@@ -686,6 +769,9 @@
+@@ -692,6 +771,9 @@
  
  // check if it's safe to start a new thread
  static bool _thread_safety_check(Thread* thread) {
@@ -3677,7 +3571,7 @@
    if (os::Bsd::is_BsdThreads() && !os::Bsd::is_floating_stack()) {
      // Fixed stack BsdThreads (SuSE Bsd/x86, and some versions of Redhat)
      //   Heap is mmap'ed at lower end of memory space. Thread stacks are
-@@ -719,6 +805,7 @@
+@@ -725,6 +807,7 @@
      //   here, that means enough space has been reserved for stack.
      return true;
    }
@@ -3685,7 +3579,7 @@
  }
  
  // Thread start routine for all newly created threads
-@@ -746,6 +833,10 @@
+@@ -752,6 +835,10 @@
      return NULL;
    }
  
@@ -3696,7 +3590,7 @@
    // thread_id is kernel thread id (similar to Solaris LWP id)
    osthread->set_thread_id(os::Bsd::gettid());
  
-@@ -755,6 +846,7 @@
+@@ -761,6 +848,7 @@
        thread->set_lgrp_id(lgrp_id);
      }
    }
@@ -3704,7 +3598,7 @@
    // initialize signal mask for this thread
    os::Bsd::hotspot_sigmask(thread);
  
-@@ -835,17 +927,22 @@
+@@ -841,17 +929,22 @@
      // let pthread_create() pick the default value.
    }
  
@@ -3727,7 +3621,7 @@
  
      pthread_t tid;
      int ret = pthread_create(&tid, &attr, (void* (*)(void*)) java_start, thread);
-@@ -859,7 +956,9 @@
+@@ -865,7 +958,9 @@
        // Need to clean up stuff we've allocated so far
        thread->set_osthread(NULL);
        delete osthread;
@@ -3737,7 +3631,7 @@
        return false;
      }
  
-@@ -875,9 +974,11 @@
+@@ -881,9 +976,11 @@
        }
      }
  
@@ -3749,7 +3643,7 @@
    }
  
    // Aborted due to thread limit being reached
-@@ -915,7 +1016,11 @@
+@@ -921,7 +1018,11 @@
    }
  
    // Store pthread info into the OSThread
@@ -3761,7 +3655,7 @@
    osthread->set_pthread_id(::pthread_self());
  
    // initialize floating point control register
-@@ -926,6 +1031,7 @@
+@@ -932,6 +1033,7 @@
  
    thread->set_osthread(osthread);
  
@@ -3769,7 +3663,7 @@
    if (UseNUMA) {
      int lgrp_id = os::numa_get_group_id();
      if (lgrp_id != -1) {
-@@ -952,6 +1058,7 @@
+@@ -958,6 +1060,7 @@
      os::Bsd::manually_expand_stack(jt, addr);
      osthread->clear_expanding_stack();
    }
@@ -3777,7 +3671,7 @@
  
    // initialize signal mask for this thread
    // and save the caller's signal mask
-@@ -1010,6 +1117,7 @@
+@@ -1016,6 +1119,7 @@
  //////////////////////////////////////////////////////////////////////////////
  // initial thread
  
@@ -3785,7 +3679,7 @@
  // Check if current thread is the initial thread, similar to Solaris thr_main.
  bool os::Bsd::is_initial_thread(void) {
    char dummy;
-@@ -1243,6 +1351,7 @@
+@@ -1249,6 +1353,7 @@
    _initial_thread_stack_size = align_size_down(_initial_thread_stack_size, page_size());
    _initial_thread_stack_bottom = (address)stack_top - _initial_thread_stack_size;
  }
@@ -3793,7 +3687,7 @@
  
  ////////////////////////////////////////////////////////////////////////////////
  // time support
-@@ -1264,9 +1373,7 @@
+@@ -1270,9 +1375,7 @@
    return (1000 * 1000);
  }
  
@@ -3804,7 +3698,7 @@
  bool os::supports_vtime() { return false; }
  bool os::enable_vtime()   { return false; }
  bool os::vtime_enabled()  { return false; }
-@@ -1286,6 +1393,21 @@
+@@ -1292,6 +1395,21 @@
  #define CLOCK_MONOTONIC (1)
  #endif
  
@@ -3826,7 +3720,7 @@
  void os::Bsd::clock_init() {
    // we do dlopen's in this particular order due to bug in bsd
    // dynamical loader (see 6348968) leading to crash on exit
-@@ -1321,7 +1443,9 @@
+@@ -1327,7 +1445,9 @@
      }
    }
  }
@@ -3836,7 +3730,7 @@
  #ifndef SYS_clock_getres
  
  #if defined(IA32) || defined(AMD64)
-@@ -1360,6 +1484,7 @@
+@@ -1366,6 +1486,7 @@
      _pthread_getcpuclockid = pthread_getcpuclockid_func;
    }
  }
@@ -3844,7 +3738,7 @@
  
  jlong os::javaTimeNanos() {
    if (Bsd::supports_monotonic_clock()) {
-@@ -1510,7 +1635,14 @@
+@@ -1516,7 +1637,14 @@
  
  // DLL functions
  
@@ -3860,7 +3754,7 @@
  
  const char* os::get_temp_directory() { return "/tmp/"; }
  
-@@ -1528,13 +1660,13 @@
+@@ -1534,13 +1662,13 @@
    const size_t pnamelen = pname ? strlen(pname) : 0;
  
    // Quietly truncate on buffer overflow.  Should be an error.
@@ -3878,7 +3772,7 @@
    } else if (strchr(pname, *os::path_separator()) != NULL) {
      int n;
      char** pelements = split_path(pname, &n);
-@@ -1543,7 +1675,8 @@
+@@ -1549,7 +1677,8 @@
        if (pelements[i] == NULL || strlen(pelements[i]) == 0) {
          continue; // skip the empty path values
        }
@@ -3888,7 +3782,7 @@
        if (file_exists(buffer)) {
          break;
        }
-@@ -1558,7 +1691,7 @@
+@@ -1564,7 +1693,7 @@
        FREE_C_HEAP_ARRAY(char*, pelements);
      }
    } else {
@@ -3897,7 +3791,7 @@
    }
  }
  
-@@ -1599,6 +1732,23 @@
+@@ -1605,6 +1734,23 @@
    }
  }
  
@@ -3921,7 +3815,7 @@
  struct _address_to_library_name {
    address addr;          // input : memory address
    size_t  buflen;        //         size of fname
-@@ -1673,11 +1823,27 @@
+@@ -1679,11 +1825,27 @@
       return false;
    }
  }
@@ -3949,7 +3843,7 @@
  void * os::dll_load(const char *filename, char *ebuf, int ebuflen)
  {
    void * result= ::dlopen(filename, RTLD_LAZY);
-@@ -1730,6 +1896,18 @@
+@@ -1736,6 +1898,18 @@
    #define EM_486          6               /* Intel 80486 */
    #endif
  
@@ -3968,7 +3862,7 @@
    static const arch_t arch_array[]={
      {EM_386,         EM_386,     ELFCLASS32, ELFDATA2LSB, (char*)"IA 32"},
      {EM_486,         EM_386,     ELFCLASS32, ELFDATA2LSB, (char*)"IA 32"},
-@@ -1810,17 +1988,11 @@
+@@ -1839,17 +2013,11 @@
  
    return NULL;
  }
@@ -3989,7 +3883,7 @@
  }
  
  
-@@ -1843,7 +2015,51 @@
+@@ -1872,7 +2040,51 @@
  
  void os::print_dll_info(outputStream *st) {
     st->print_cr("Dynamic libraries:");
@@ -4042,7 +3936,7 @@
     char fname[32];
     pid_t pid = os::Bsd::gettid();
  
-@@ -1852,6 +2068,7 @@
+@@ -1881,6 +2093,7 @@
     if (!_print_ascii_file(fname, st)) {
       st->print("Can not get library information for pid = %d\n", pid);
     }
@@ -4050,7 +3944,7 @@
  }
  
  
-@@ -1884,6 +2101,7 @@
+@@ -1913,6 +2126,7 @@
    st->print(name.machine);
    st->cr();
  
@@ -4058,7 +3952,7 @@
    // Print warning if unsafe chroot environment detected
    if (unsafe_chroot_detected) {
      st->print("WARNING!! ");
-@@ -1898,6 +2116,7 @@
+@@ -1927,6 +2141,7 @@
       st->print("(%s stack)", os::Bsd::is_floating_stack() ? "floating" : "fixed");
    }
    st->cr();
@@ -4066,7 +3960,7 @@
  
    // rlimit
    st->print("rlimit:");
-@@ -1923,6 +2142,7 @@
+@@ -1952,6 +2167,7 @@
    if (rlim.rlim_cur == RLIM_INFINITY) st->print("infinity");
    else st->print("%d", rlim.rlim_cur);
  
@@ -4074,7 +3968,7 @@
    st->print(", AS ");
    getrlimit(RLIMIT_AS, &rlim);
    if (rlim.rlim_cur == RLIM_INFINITY) st->print("infinity");
-@@ -1935,6 +2155,7 @@
+@@ -1964,6 +2180,7 @@
    os::loadavg(loadavg, 3);
    st->print("%0.02f %0.02f %0.02f", loadavg[0], loadavg[1], loadavg[2]);
    st->cr();
@@ -4082,7 +3976,7 @@
  }
  
  void os::print_memory_info(outputStream* st) {
-@@ -1942,18 +2163,22 @@
+@@ -1971,18 +2188,22 @@
    st->print("Memory:");
    st->print(" %dk page", os::vm_page_size()>>10);
  
@@ -4105,7 +3999,7 @@
    st->cr();
  }
  
-@@ -2180,19 +2405,29 @@
+@@ -2209,19 +2430,29 @@
  static volatile jint pending_signals[NSIG+1] = { 0 };
  
  // Bsd(POSIX) specific hand shaking semaphore.
@@ -4137,7 +4031,7 @@
  }
  
  static int check_pending_signals(bool wait) {
-@@ -2214,7 +2449,7 @@
+@@ -2243,7 +2474,7 @@
      do {
        thread->set_suspend_equivalent();
        // cleared by handle_special_suspend_equivalent_condition() or java_suspend_self()
@@ -4146,7 +4040,7 @@
  
        // were we externally suspended while we were waiting?
        threadIsSuspended = thread->handle_special_suspend_equivalent_condition();
-@@ -2225,7 +2460,7 @@
+@@ -2254,7 +2485,7 @@
          // while suspended because that would surprise the thread that
          // suspended us.
          //
@@ -4155,34 +4049,27 @@
  
          thread->java_suspend_self();
        }
-@@ -2295,11 +2530,18 @@
+@@ -2324,11 +2555,18 @@
  //       All it does is to check if there are enough free pages
  //       left at the time of mmap(). This could be a potential
  //       problem.
 +// modified to keep intact with openjdk6
- bool os::commit_memory(char* addr, size_t size) {
--  uintptr_t res = (uintptr_t) ::mmap(addr, size,
--                                   PROT_READ|PROT_WRITE|PROT_EXEC,
+ bool os::commit_memory(char* addr, size_t size, bool exec) {
+-  int prot = exec ? PROT_READ|PROT_WRITE|PROT_EXEC : PROT_READ|PROT_WRITE;
 +//  int prot = exec ? PROT_READ|PROT_WRITE|PROT_EXEC : PROT_READ|PROT_WRITE;
 +  int prot = PROT_READ|PROT_WRITE|PROT_EXEC;
 +#ifdef __OpenBSD__
 +  // XXX: Work-around mmap/MAP_FIXED bug temporarily on OpenBSD
 +  return ::mprotect(addr, size, prot) == 0;
 +#else
-+  uintptr_t res = (uintptr_t) ::mmap(addr, size, prot,
+   uintptr_t res = (uintptr_t) ::mmap(addr, size, prot,
                                     MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0);
    return res != (uintptr_t) MAP_FAILED;
 +#endif
  }
  
- bool os::commit_memory(char* addr, size_t size, size_t alignment_hint) {
-@@ -2309,40 +2551,32 @@
- void os::realign_memory(char *addr, size_t bytes, size_t alignment_hint) { }
- 
- void os::free_memory(char *addr, size_t bytes) {
--  uncommit_memory(addr, bytes);
-+  ::mmap(addr, bytes, PROT_READ | PROT_WRITE,
-+         MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0);
+ bool os::commit_memory(char* addr, size_t size, size_t alignment_hint,
+@@ -2344,36 +2582,27 @@
  }
  
  void os::numa_make_global(char *addr, size_t bytes) {
@@ -4224,7 +4111,7 @@
  }
  
  bool os::get_page_info(char *start, page_info* info) {
-@@ -2353,9 +2587,23 @@
+@@ -2384,6 +2613,7 @@
    return end;
  }
  
@@ -4232,49 +4119,7 @@
  extern "C" void numa_warn(int number, char *where, ...) { }
  extern "C" void numa_error(char *where) { }
  
-+
-+// If we are running with libnuma version > 2, then we should
-+// be trying to use symbols with versions 1.1
-+// If we are running with earlier version, which did not have symbol versions,
-+// we should use the base version.
-+void* os::Bsd::libnuma_dlsym(void* handle, const char *name) {
-+  void *f = dlvsym(handle, name, "libnuma_1.1");
-+  if (f == NULL) {
-+    f = dlsym(handle, name);
-+  }
-+  return f;
-+}
-+
- bool os::Bsd::libnuma_init() {
-   // sched_getcpu() should be in libc.
-   set_sched_getcpu(CAST_TO_FN_PTR(sched_getcpu_func_t,
-@@ -2365,19 +2613,19 @@
-     void *handle = dlopen("libnuma.so.1", RTLD_LAZY);
-     if (handle != NULL) {
-       set_numa_node_to_cpus(CAST_TO_FN_PTR(numa_node_to_cpus_func_t,
--                                           dlsym(handle, "numa_node_to_cpus")));
-+                                           libnuma_dlsym(handle, "numa_node_to_cpus")));
-       set_numa_max_node(CAST_TO_FN_PTR(numa_max_node_func_t,
--                                       dlsym(handle, "numa_max_node")));
-+                                       libnuma_dlsym(handle, "numa_max_node")));
-       set_numa_available(CAST_TO_FN_PTR(numa_available_func_t,
--                                        dlsym(handle, "numa_available")));
-+                                        libnuma_dlsym(handle, "numa_available")));
-       set_numa_tonode_memory(CAST_TO_FN_PTR(numa_tonode_memory_func_t,
--                                            dlsym(handle, "numa_tonode_memory")));
-+                                            libnuma_dlsym(handle, "numa_tonode_memory")));
-       set_numa_interleave_memory(CAST_TO_FN_PTR(numa_interleave_memory_func_t,
--                                            dlsym(handle, "numa_interleave_memory")));
-+                                            libnuma_dlsym(handle, "numa_interleave_memory")));
- 
- 
-       if (numa_available() != -1) {
--        set_numa_all_nodes((unsigned long*)dlsym(handle, "numa_all_nodes"));
-+        set_numa_all_nodes((unsigned long*)libnuma_dlsym(handle, "numa_all_nodes"));
-         // Create a cpu -> node mapping
-         _cpu_to_node = new (ResourceObj::C_HEAP) GrowableArray<int>(0, true);
-         rebuild_cpu_to_node_map();
-@@ -2441,12 +2689,18 @@
+@@ -2485,11 +2715,17 @@
  os::Bsd::numa_tonode_memory_func_t os::Bsd::_numa_tonode_memory;
  os::Bsd::numa_interleave_memory_func_t os::Bsd::_numa_interleave_memory;
  unsigned long* os::Bsd::_numa_all_nodes;
@@ -4285,26 +4130,14 @@
 +  // XXX: Work-around mmap/MAP_FIXED bug temporarily on OpenBSD
 +  return ::mprotect(addr, size, PROT_NONE) == 0;
 +#else
-   return ::mmap(addr, size,
-                 PROT_READ|PROT_WRITE|PROT_EXEC,
+   return ::mmap(addr, size, PROT_NONE,
                  MAP_PRIVATE|MAP_FIXED|MAP_NORESERVE|MAP_ANONYMOUS, -1, 0)
      != MAP_FAILED;
 +#endif
  }
  
  static address _highest_vm_reserved_address = NULL;
-@@ -2467,7 +2721,9 @@
-     flags |= MAP_FIXED;
-   }
- 
--  addr = (char*)::mmap(requested_addr, bytes, PROT_READ|PROT_WRITE|PROT_EXEC,
-+  // Map uncommitted pages PROT_READ and PROT_WRITE, change access
-+  // to PROT_EXEC if executable when we commit the page.
-+  addr = (char*)::mmap(requested_addr, bytes, PROT_READ|PROT_WRITE,
-                        flags, -1, 0);
- 
-   if (addr != MAP_FAILED) {
-@@ -2548,6 +2804,9 @@
+@@ -2593,6 +2829,9 @@
  static size_t _large_page_size = 0;
  
  bool os::large_page_init() {
@@ -4314,7 +4147,7 @@
    if (!UseLargePages) return false;
  
    if (LargePageSizeInBytes) {
-@@ -2602,6 +2861,7 @@
+@@ -2649,6 +2888,7 @@
    // We optimistically assume the support is available. If later it turns out
    // not true, VM will automatically switch to use regular page size.
    return true;
@@ -4322,16 +4155,7 @@
  }
  
  #ifndef SHM_HUGETLB
-@@ -2609,6 +2869,8 @@
- #endif
- 
- char* os::reserve_memory_special(size_t bytes) {
-+  // "exec" is passed in but not used.  Creating the shared image for
-+  // the code cache doesn't have an SHM_X executable permission to check.
-   assert(UseLargePages, "only for large pages");
- 
-   key_t key = IPC_PRIVATE;
-@@ -2776,7 +3038,7 @@
+@@ -2825,7 +3065,7 @@
  }
  
  size_t os::read(int fd, void *buf, unsigned int nBytes) {
@@ -4340,7 +4164,7 @@
  }
  
  // TODO-FIXME: reconcile Solaris' os::sleep with the bsd variation.
-@@ -2912,6 +3174,44 @@
+@@ -2961,6 +3201,44 @@
  // this reason, the code should not be used as default (ThreadPriorityPolicy=0).
  // It is only used when ThreadPriorityPolicy=1 and requires root privilege.
  
@@ -4385,7 +4209,7 @@
  int os::java_to_os_priority[MaxPriority + 1] = {
    19,              // 0 Entry should never be used
  
-@@ -2929,6 +3229,7 @@
+@@ -2978,6 +3256,7 @@
  
    -5               // 10 MaxPriority
  };
@@ -4393,7 +4217,7 @@
  
  static int prio_init() {
    if (ThreadPriorityPolicy == 1) {
-@@ -2948,8 +3249,28 @@
+@@ -2997,8 +3276,28 @@
  OSReturn os::set_native_priority(Thread* thread, int newpri) {
    if ( !UseThreadPriorities || ThreadPriorityPolicy == 0 ) return OS_OK;
  
@@ -4422,7 +4246,7 @@
  }
  
  OSReturn os::get_native_priority(const Thread* const thread, int *priority_ptr) {
-@@ -2959,7 +3280,17 @@
+@@ -3008,7 +3307,17 @@
    }
  
    errno = 0;
@@ -4440,7 +4264,7 @@
    return (*priority_ptr != -1 || errno == 0 ? OS_OK : OS_ERR);
  }
  
-@@ -3069,7 +3400,7 @@
+@@ -3118,7 +3427,7 @@
    /* Get signal number to use for suspend/resume */
    if ((s = ::getenv("_JAVA_SR_SIGNUM")) != 0) {
      int sig = ::strtol(s, 0, 10);
@@ -4449,7 +4273,7 @@
          SR_signum = sig;
      }
    }
-@@ -3412,6 +3743,28 @@
+@@ -3461,6 +3770,28 @@
      set_signal_handler(SIGFPE, true);
      set_signal_handler(SIGXFSZ, true);
  
@@ -4478,7 +4302,7 @@
      if (libjsig_is_loaded) {
        // Tell libjsig jvm finishes setting signal handlers
        (*end_signal_setting)();
-@@ -3432,6 +3785,7 @@
+@@ -3481,6 +3812,7 @@
    }
  }
  
@@ -4486,7 +4310,7 @@
  // This is the fastest way to get thread cpu time on Bsd.
  // Returns cpu time (user+sys) for any thread, not only for current.
  // POSIX compliant clocks are implemented in the kernels 2.6.16+.
-@@ -3446,6 +3800,7 @@
+@@ -3495,6 +3827,7 @@
  
    return (tp.tv_sec * SEC_IN_NANOSECS) + tp.tv_nsec;
  }
@@ -4494,7 +4318,7 @@
  
  /////
  // glibc on Bsd platform uses non-documented flag
-@@ -3667,13 +4022,13 @@
+@@ -3716,13 +4049,13 @@
  
    _initial_pid = (java_launcher_pid > 0) ? java_launcher_pid : getpid();
  
@@ -4510,7 +4334,7 @@
    if (Bsd::page_size() == -1) {
      fatal1("os_bsd.cpp: os::init: sysconf failed (%s)", strerror(errno));
    }
-@@ -3686,7 +4041,16 @@
+@@ -3735,7 +4068,16 @@
  
    Bsd::clock_init();
    initial_time_count = os::elapsed_counter();
@@ -4528,7 +4352,7 @@
  }
  
  // To install functions for atexit system call
-@@ -3699,7 +4063,9 @@
+@@ -3748,7 +4090,9 @@
  // this is called _after_ the global arguments have been parsed
  jint os::init_2(void)
  {
@@ -4538,7 +4362,7 @@
  
    // Allocate a single page and mark it as readable for safepoint polling
    address polling_page = (address) ::mmap(NULL, Bsd::page_size(), PROT_READ, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0);
-@@ -3748,6 +4114,7 @@
+@@ -3797,6 +4141,7 @@
    JavaThread::set_stack_size_at_create(round_to(threadStackSizeInBytes,
          vm_page_size()));
  
@@ -4546,7 +4370,7 @@
    Bsd::capture_initial_stack(JavaThread::stack_size_at_create());
  
    Bsd::libpthread_init();
-@@ -3770,6 +4137,7 @@
+@@ -3819,6 +4164,7 @@
        UseNUMA = true;
      }
    }
@@ -4554,7 +4378,7 @@
  
    if (MaxFDLimit) {
      // set the number of file descriptors to max. print out error
-@@ -3781,6 +4149,14 @@
+@@ -3830,6 +4176,14 @@
          perror("os::init_2 getrlimit failed");
      } else {
        nbr_files.rlim_cur = nbr_files.rlim_max;
@@ -4569,7 +4393,7 @@
        status = setrlimit(RLIMIT_NOFILE, &nbr_files);
        if (status != 0) {
          if (PrintMiscellaneous && (Verbose || WizardMode))
-@@ -3789,8 +4165,10 @@
+@@ -3838,8 +4192,10 @@
      }
    }
  
@@ -4580,7 +4404,7 @@
  
    // Initialize HPI.
    jint hpi_result = hpi::initialize();
-@@ -3838,11 +4216,15 @@
+@@ -3887,11 +4243,15 @@
  };
  
  int os::active_processor_count() {
@@ -4596,7 +4420,7 @@
  }
  
  bool os::distribute_processes(uint length, uint* distribution) {
-@@ -3884,6 +4266,9 @@
+@@ -3933,6 +4293,9 @@
  
  int os::Bsd::safe_cond_timedwait(pthread_cond_t *_cond, pthread_mutex_t *_mutex, const struct timespec *_abstime)
  {
@@ -4606,7 +4430,7 @@
     if (is_NPTL()) {
        return pthread_cond_timedwait(_cond, _mutex, _abstime);
     } else {
-@@ -3899,6 +4284,7 @@
+@@ -3948,6 +4311,7 @@
  #endif // IA64
        return status;
     }
@@ -4614,7 +4438,7 @@
  }
  
  ////////////////////////////////////////////////////////////////////////////////
-@@ -4034,17 +4420,17 @@
+@@ -4083,17 +4447,17 @@
    if (!rewrite_existing) {
      oflags |= O_EXCL;
    }
@@ -4635,7 +4459,7 @@
  }
  
  // Map a block of memory.
-@@ -4094,6 +4480,7 @@
+@@ -4143,6 +4507,7 @@
    return munmap(addr, bytes) == 0;
  }
  
@@ -4643,7 +4467,7 @@
  static jlong slow_thread_cpu_time(Thread *thread, bool user_sys_cpu_time);
  
  static clockid_t thread_cpu_clockid(Thread* thread) {
-@@ -4105,6 +4492,7 @@
+@@ -4154,6 +4519,7 @@
    assert(rc == 0, "pthread_getcpuclockid is expected to return 0 code");
    return clockid;
  }
@@ -4651,7 +4475,7 @@
  
  // current_thread_cpu_time(bool) and thread_cpu_time(Thread*, bool)
  // are used by JVM M&M and JVMTI to get user+sys or user CPU time
-@@ -4114,39 +4502,71 @@
+@@ -4163,39 +4529,71 @@
  // the fast estimate available on the platform.
  
  jlong os::current_thread_cpu_time() {
@@ -4723,7 +4547,7 @@
  //
  //  -1 on error.
  //
-@@ -4235,6 +4655,7 @@
+@@ -4284,6 +4682,7 @@
      return (jlong)user_time * (1000000000 / clock_tics_per_sec);
    }
  }
@@ -4731,7 +4555,7 @@
  
  void os::current_thread_cpu_time_info(jvmtiTimerInfo *info_ptr) {
    info_ptr->max_value = ALL_64_BITS;       // will not wrap in less than 64 bits
-@@ -4251,7 +4672,13 @@
+@@ -4300,7 +4699,13 @@
  }
  
  bool os::is_thread_cpu_time_supported() {
@@ -4745,7 +4569,7 @@
  }
  
  // System loadavg support.  Returns -1 if load average cannot be obtained.
-@@ -4384,7 +4811,7 @@
+@@ -4433,7 +4838,7 @@
  // abstime will be the absolute timeout time
  // TODO: replace compute_abstime() with unpackTime()
  
@@ -4754,7 +4578,7 @@
    if (millis < 0)  millis = 0;
    struct timeval now;
    int status = gettimeofday(&now, NULL);
-@@ -4436,7 +4863,7 @@
+@@ -4485,7 +4890,7 @@
          status = pthread_cond_wait(_cond, _mutex);
          // for some reason, under 2.7 lwp_cond_wait() may return ETIME ...
          // Treat this the same as if the wait was interrupted
@@ -4763,7 +4587,7 @@
          assert_status(status == 0 || status == EINTR, status, "cond_wait");
       }
       -- _nParked ;
-@@ -4494,10 +4921,10 @@
+@@ -4543,10 +4948,10 @@
        pthread_cond_init (_cond, NULL) ;
      }
      assert_status(status == 0 || status == EINTR ||
@@ -4776,7 +4600,7 @@
      // We consume and ignore EINTR and spurious wakeups.
    }
    --_nParked ;
-@@ -4589,7 +5016,7 @@
+@@ -4638,7 +5043,7 @@
   * years from "now".
   */
  
@@ -4785,7 +4609,7 @@
    assert (time > 0, "convertTime");
  
    struct timeval now;
-@@ -4648,7 +5075,7 @@
+@@ -4698,7 +5103,7 @@
    }
  
    // Next, demultiplex/decode time arguments
@@ -4794,7 +4618,7 @@
    if (time < 0) { // don't wait at all
      return;
    }
-@@ -4701,7 +5128,7 @@
+@@ -4752,7 +5157,7 @@
      }
    }
    assert_status(status == 0 || status == EINTR ||
@@ -4803,7 +4627,7 @@
                  status, "cond_timedwait");
  
  #ifdef ASSERT
-@@ -4743,14 +5170,12 @@
+@@ -4794,14 +5199,12 @@
  }
  
  
@@ -4823,7 +4647,7 @@
  #endif
  
  // Run the specified command in a separate process. Return its exit value,
-@@ -4765,8 +5190,7 @@
+@@ -4816,8 +5219,7 @@
    // separate process to execve. Make a direct syscall to fork process.
    // On IA64 there's no fork syscall, we have to use fork() and hope for
    // the best...
@@ -4833,7 +4657,7 @@
  
    if (pid < 0) {
      // fork failed
-@@ -4782,8 +5206,7 @@
+@@ -4833,8 +5235,7 @@
      // in the new process, so make a system call directly.
      // IA64 should use normal execve() from glibc to match the glibc fork()
      // above.
@@ -4844,15 +4668,8 @@
      // execve failed
      _exit(-1);
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/os_bsd.hpp	2009-11-03 17:12:55.000000000 -0800
-@@ -1,5 +1,5 @@
- /*
-- * Copyright 1999-2008 Sun Microsystems, Inc.  All Rights Reserved.
-+ * Copyright 1999-2009 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
+--- ../orig/hotspot/src/os/bsd/vm/os_bsd.hpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/os_bsd.hpp	2010-04-17 21:48:07.000000000 +0400
 @@ -27,6 +27,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 *);
@@ -4943,12 +4760,10 @@
    // GNU libc and libpthread version strings
    static const char *glibc_version()          { return _glibc_version; }
    static const char *libpthread_version()     { return _libpthread_version; }
-@@ -147,7 +170,8 @@
- 
+@@ -148,6 +171,7 @@
    static void libpthread_init();
    static bool libnuma_init();
--
-+  static void* libnuma_dlsym(void* handle, const char* name);
+   static void* libnuma_dlsym(void* handle, const char* name);
 +#endif
    // Minimum stack size a thread can be created with (allowing
    // the VM to completely create the thread and enter user code)
@@ -4992,8 +4807,8 @@
    // Stack repair handling
  
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os/bsd/vm/os_bsd.inline.hpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os/bsd/vm/os_bsd.inline.hpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os/bsd/vm/os_bsd.inline.hpp	2010-04-17 21:48:07.000000000 +0400
 @@ -61,7 +61,15 @@
  
  inline bool os::allocate_stack_guard_pages() {
@@ -5119,8 +4934,8 @@
  
  #define RESTARTABLE(_cmd, _result) do { \
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s	2009-10-22 22:27:56.000000000 -0700
+--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s	2010-04-17 21:48:07.000000000 +0400
 @@ -21,6 +21,22 @@
  # have any questions.
  # 
@@ -5328,8 +5143,8 @@
          pushl    %ebx              #  4(%esp) : old %ebx
          pushl    %edi              #  0(%esp) : old %edi
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_64.s	2010-04-17 21:48:07.000000000 +0400
 @@ -22,48 +22,70 @@
  #
  
@@ -5479,8 +5294,8 @@
          leaq     -8(%rdi,%rdx,8),%rax # from + count*8 - 8
          jbe      acl_CopyRight
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp	2010-04-17 21:48:07.000000000 +0400
 @@ -22,7 +22,29 @@
   *
   */
@@ -5512,8 +5327,8 @@
  // Efficient swapping of data bytes from Java byte
  // ordering to native byte ordering and vice versa.
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp	2010-04-17 21:48:07.000000000 +0400
 @@ -44,23 +44,158 @@
  # include <sys/wait.h>
  # include <pwd.h>
@@ -6005,8 +5820,8 @@
    st->cr();
    st->cr();
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os_cpu/bsd_x86/vm/threadLS_bsd_x86.hpp	2010-04-17 21:48:07.000000000 +0400
 @@ -27,8 +27,10 @@
  #ifndef AMD64
    // map stack pointer to thread pointer - see notes in threadLS_bsd_x86.cpp
@@ -6019,8 +5834,8 @@
  #endif // !AMD64
  
 diff -uNr ../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-10-22 23:07:24.000000000 -0700
-+++ ./hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp	2010-04-17 21:43:53.000000000 +0400
++++ ./hotspot/src/os_cpu/bsd_x86/vm/vmStructs_bsd_x86.hpp	2010-04-17 21:48:07.000000000 +0400
 @@ -31,7 +31,7 @@
    /******************************/                                                                                                   \
    /* Threads (NOTE: incomplete) */                                                                                                   \
@@ -6031,8 +5846,8 @@
    /* This must be the last entry, and must be present */                                                                             \
    last_entry()
 diff -uNr ../orig/hotspot/src/share/vm/adlc/adlc.hpp ./hotspot/src/share/vm/adlc/adlc.hpp
---- ../orig/hotspot/src/share/vm/adlc/adlc.hpp	2009-10-14 10:13:17.000000000 -0700
-+++ ./hotspot/src/share/vm/adlc/adlc.hpp	2009-10-28 20:01:53.000000000 -0700
+--- ../orig/hotspot/src/share/vm/adlc/adlc.hpp	2010-04-15 11:31:23.000000000 +0400
++++ ./hotspot/src/share/vm/adlc/adlc.hpp	2010-04-17 21:48:07.000000000 +0400
 @@ -69,9 +69,9 @@
  #endif
  #endif // _WIN32
@@ -6045,42 +5860,22 @@
  
  // Macros
  #define uint32 unsigned int
-diff -uNr ../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-10-14 10:13:18.000000000 -0700
-+++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_concurrentMarkSweep	2009-10-22 22:30:20.000000000 -0700
-@@ -28,6 +28,7 @@
- binaryTreeDictionary.cpp                binaryTreeDictionary.hpp
- binaryTreeDictionary.cpp                globals.hpp
- binaryTreeDictionary.cpp                ostream.hpp
-+binaryTreeDictionary.cpp                space.inline.hpp
- binaryTreeDictionary.cpp                spaceDecorator.hpp
- 
- binaryTreeDictionary.hpp                freeBlockDictionary.hpp
 diff -uNr ../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-10-14 10:13:18.000000000 -0700
-+++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew	2009-10-28 20:01:49.000000000 -0700
-@@ -30,6 +30,8 @@
- asParNewGeneration.cpp                  cmsGCAdaptivePolicyCounters.hpp
- asParNewGeneration.cpp                  defNewGeneration.inline.hpp
+--- ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew	2010-04-15 11:31:24.000000000 +0400
++++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parNew	2010-04-17 21:48:07.000000000 +0400
+@@ -32,6 +32,8 @@
+ asParNewGeneration.cpp                  markOop.inline.hpp
+ asParNewGeneration.cpp                  markSweep.inline.hpp
  asParNewGeneration.cpp                  oop.pcgc.inline.hpp
 +asParNewGeneration.cpp                  markOop.inline.hpp
 +asParNewGeneration.cpp                  markSweep.inline.hpp
  asParNewGeneration.cpp                  parNewGeneration.hpp
  asParNewGeneration.cpp                  referencePolicy.hpp
  asParNewGeneration.cpp                  spaceDecorator.hpp
-@@ -40,7 +42,7 @@
- parCardTableModRefBS.cpp                java.hpp
- parCardTableModRefBS.cpp                mutexLocker.hpp
- parCardTableModRefBS.cpp                sharedHeap.hpp
--parCardTableModRefBS.cpp                space.hpp
-+parCardTableModRefBS.cpp                space.inline.hpp
- parCardTableModRefBS.cpp                universe.hpp
- parCardTableModRefBS.cpp                virtualspace.hpp
- 
 diff -uNr ../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-10-14 10:13:18.000000000 -0700
-+++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge	2009-10-28 20:01:49.000000000 -0700
-@@ -306,6 +306,8 @@
+--- ../orig/hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge	2010-04-15 11:31:25.000000000 +0400
++++ ./hotspot/src/share/vm/gc_implementation/includeDB_gc_parallelScavenge	2010-04-17 21:48:07.000000000 +0400
+@@ -308,6 +308,8 @@
  psPermGen.cpp                           psMarkSweepDecorator.hpp
  psPermGen.cpp                           psParallelCompact.hpp
  psPermGen.cpp                           psPermGen.hpp
@@ -6089,62 +5884,10 @@
  
  psPermGen.hpp                           psOldGen.hpp
  
-diff -uNr ../orig/hotspot/src/share/vm/includeDB_compiler2 ./hotspot/src/share/vm/includeDB_compiler2
---- ../orig/hotspot/src/share/vm/includeDB_compiler2	2009-10-14 10:13:19.000000000 -0700
-+++ ./hotspot/src/share/vm/includeDB_compiler2	2009-10-28 20:01:49.000000000 -0700
-@@ -140,6 +140,7 @@
- c2_globals_<os_family>.hpp              macros.hpp
- 
- c2_init_<arch>.cpp                      compile.hpp
-+c2_init_<arch>.cpp                      node.hpp
- 
- c2compiler.cpp                          ad_<arch_model>.hpp
- c2compiler.cpp                          c2compiler.hpp
-@@ -839,6 +840,7 @@
- phase.cpp                               compile.hpp
- phase.cpp                               compileBroker.hpp
- phase.cpp                               nmethod.hpp
-+phase.cpp                               node.hpp
- phase.cpp                               phase.hpp
- 
- phase.hpp                               port.hpp
-diff -uNr ../orig/hotspot/src/share/vm/includeDB_core ./hotspot/src/share/vm/includeDB_core
---- ../orig/hotspot/src/share/vm/includeDB_core	2009-10-14 10:13:19.000000000 -0700
-+++ ./hotspot/src/share/vm/includeDB_core	2009-10-28 20:01:49.000000000 -0700
-@@ -473,7 +473,7 @@
- cardTableModRefBS.cpp                   java.hpp
- cardTableModRefBS.cpp                   mutexLocker.hpp
- cardTableModRefBS.cpp                   sharedHeap.hpp
--cardTableModRefBS.cpp                   space.hpp
-+cardTableModRefBS.cpp                   space.inline.hpp
- cardTableModRefBS.cpp                   universe.hpp
- cardTableModRefBS.cpp                   virtualspace.hpp
- 
-@@ -2014,7 +2014,7 @@
- instanceKlass.cpp                       vmSymbols.hpp
- 
- instanceKlass.hpp                       accessFlags.hpp
--instanceKlass.hpp                       bitMap.hpp
-+instanceKlass.hpp                       bitMap.inline.hpp
- instanceKlass.hpp                       constMethodOop.hpp
- instanceKlass.hpp                       constantPoolOop.hpp
- instanceKlass.hpp                       handles.hpp
-diff -uNr ../orig/hotspot/src/share/vm/includeDB_features ./hotspot/src/share/vm/includeDB_features
---- ../orig/hotspot/src/share/vm/includeDB_features	2009-10-14 10:13:19.000000000 -0700
-+++ ./hotspot/src/share/vm/includeDB_features	2009-10-28 20:01:49.000000000 -0700
-@@ -59,6 +59,8 @@
- 
- dump_<arch_model>.cpp                   assembler_<arch>.inline.hpp
- dump_<arch_model>.cpp                   compactingPermGenGen.hpp
-+dump_<arch_model>.cpp                   generation.inline.hpp
-+dump_<arch_model>.cpp                   space.inline.hpp
- 
- forte.cpp                               collectedHeap.inline.hpp
- forte.cpp                               debugInfoRec.hpp
 diff -uNr ../orig/hotspot/src/share/vm/interpreter/bytecodeTracer.cpp ./hotspot/src/share/vm/interpreter/bytecodeTracer.cpp
---- ../orig/hotspot/src/share/vm/interpreter/bytecodeTracer.cpp	2009-10-14 10:13:19.000000000 -0700
-+++ ./hotspot/src/share/vm/interpreter/bytecodeTracer.cpp	2009-10-28 20:01:49.000000000 -0700
-@@ -74,7 +74,7 @@
+--- ../orig/hotspot/src/share/vm/interpreter/bytecodeTracer.cpp	2010-04-15 11:31:25.000000000 +0400
++++ ./hotspot/src/share/vm/interpreter/bytecodeTracer.cpp	2010-04-17 21:48:07.000000000 +0400
+@@ -77,7 +77,7 @@
        // the incoming method.  We could lose a line of trace output.
        // This is acceptable in a debug-only feature.
        st->cr();
@@ -6153,7 +5896,7 @@
        method->print_name(st);
        st->cr();
        _current_method = method();
-@@ -87,7 +87,7 @@
+@@ -90,7 +90,7 @@
        code = Bytecodes::code_at(bcp);
      }
      int bci = bcp - method->code_base();
@@ -6163,8 +5906,8 @@
        st->print("%8d  %4d  " INTPTR_FORMAT " " INTPTR_FORMAT " %s",
             BytecodeCounter::counter_value(), bci, tos, tos2, Bytecodes::name(code));
 diff -uNr ../orig/hotspot/src/share/vm/prims/forte.cpp ./hotspot/src/share/vm/prims/forte.cpp
---- ../orig/hotspot/src/share/vm/prims/forte.cpp	2009-10-14 10:13:21.000000000 -0700
-+++ ./hotspot/src/share/vm/prims/forte.cpp	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/hotspot/src/share/vm/prims/forte.cpp	2010-04-15 11:31:26.000000000 +0400
++++ ./hotspot/src/share/vm/prims/forte.cpp	2010-04-17 21:48:07.000000000 +0400
 @@ -626,6 +626,11 @@
  // Method to let libcollector know about a dynamically loaded function.
  // Because it is weakly bound, the calls become NOP's when the library
@@ -6186,9 +5929,9 @@
  
  } // end extern "C"
 diff -uNr ../orig/hotspot/src/share/vm/runtime/globals.hpp ./hotspot/src/share/vm/runtime/globals.hpp
---- ../orig/hotspot/src/share/vm/runtime/globals.hpp	2009-10-14 10:13:21.000000000 -0700
-+++ ./hotspot/src/share/vm/runtime/globals.hpp	2009-10-28 20:01:49.000000000 -0700
-@@ -312,7 +312,7 @@
+--- ../orig/hotspot/src/share/vm/runtime/globals.hpp	2010-04-15 11:31:27.000000000 +0400
++++ ./hotspot/src/share/vm/runtime/globals.hpp	2010-04-17 21:48:07.000000000 +0400
+@@ -323,7 +323,7 @@
    /* UseMembar is theoretically a temp flag used for memory barrier         \
     * removal testing.  It was supposed to be removed before FCS but has     \
     * been re-added (see 6401008) */                                         \
@@ -6196,27 +5939,27 @@
 +  product(bool, UseMembar, true,                                           \
            "(Unstable) Issues membars on thread state transitions")          \
                                                                              \
-   product(bool, PrintCommandLineFlags, false,                               \
+   diagnostic(bool, UnlockDiagnosticVMOptions, trueInDebug,                  \
 diff -uNr ../orig/hotspot/src/share/vm/runtime/os.cpp ./hotspot/src/share/vm/runtime/os.cpp
---- ../orig/hotspot/src/share/vm/runtime/os.cpp	2009-10-14 10:13:21.000000000 -0700
-+++ ./hotspot/src/share/vm/runtime/os.cpp	2009-10-27 12:31:31.000000000 -0700
-@@ -80,7 +80,12 @@
+--- ../orig/hotspot/src/share/vm/runtime/os.cpp	2010-04-15 11:31:27.000000000 +0400
++++ ./hotspot/src/share/vm/runtime/os.cpp	2010-04-17 21:48:07.000000000 +0400
+@@ -79,7 +79,12 @@
+     assert(false, "Failed localtime_pd");
      return NULL;
    }
- 
++
 +#if defined(_ALLBSD_SOURCE)
 +  const time_t zone = (time_t) time_struct.tm_gmtoff;
 +#else
    const time_t zone = timezone;
 +#endif
-+
  
    // If daylight savings time is in effect,
    // we are 1 hour East of our time zone
 diff -uNr ../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-10-14 10:13:21.000000000 -0700
-+++ ./hotspot/src/share/vm/runtime/vm_version.cpp	2009-10-28 20:01:49.000000000 -0700
-@@ -140,7 +140,8 @@
+--- ../orig/hotspot/src/share/vm/runtime/vm_version.cpp	2010-04-15 11:31:27.000000000 +0400
++++ ./hotspot/src/share/vm/runtime/vm_version.cpp	2010-04-17 21:48:07.000000000 +0400
+@@ -144,7 +144,8 @@
  
  #define OS       LINUX_ONLY("linux")             \
                   WINDOWS_ONLY("windows")         \
@@ -6224,11 +5967,11 @@
 +                 SOLARIS_ONLY("solaris")         \
 +                 BSD_ONLY("bsd")
  
- #define CPU      IA32_ONLY("x86")                \
-                  IA64_ONLY("ia64")               \
+ #ifdef ZERO
+ #define CPU      ZERO_LIBARCH
 diff -uNr ../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-10-14 10:13:22.000000000 -0700
-+++ ./hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp	2010-04-15 11:31:28.000000000 +0400
++++ ./hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp	2010-04-17 21:48:07.000000000 +0400
 @@ -71,12 +71,25 @@
  # include <sys/procfs.h>
  # endif
@@ -6257,7 +6000,7 @@
  
  // 4810578: varargs unsafe on 32-bit integer/64-bit pointer architectures
  // When __cplusplus is defined, NULL is defined as 0 (32-bit constant) in
-@@ -112,17 +125,20 @@
+@@ -112,7 +125,7 @@
  // pointer is stored as integer value.  On some platforms, sizeof(intptr_t) >
  // sizeof(void*), so here we want something which is integer type, but has the
  // same size as a pointer.
@@ -6266,22 +6009,16 @@
    #ifdef _LP64
      #define NULL_WORD  0L
    #else
--    #define NULL_WORD  0
-+    // Cast 0 to intptr_t rather than int32_t since they are not the same type
-+    // on platforms such as Mac OS X.
-+    #define NULL_WORD  ((intptr_t)0)
-   #endif
- #else
+@@ -124,7 +137,7 @@
    #define NULL_WORD  NULL
  #endif
  
 -#ifndef LINUX
-+
 +#if !defined(LINUX) && !defined(_ALLBSD_SOURCE)
  // Compiler-specific primitive types
  typedef unsigned short     uint16_t;
  #ifndef _UINT32_T
-@@ -142,7 +158,7 @@
+@@ -144,7 +157,7 @@
  // prior definition of intptr_t, and add "&& !defined(XXX)" above.
  #endif // _SYS_INT_TYPES_H
  
@@ -6290,7 +6027,7 @@
  
  // Additional Java basic types
  
-@@ -226,7 +242,9 @@
+@@ -228,7 +241,9 @@
  inline int g_isnan(float  f) { return isnand(f); }
  #endif
  inline int g_isnan(double f) { return isnand(f); }
@@ -6302,9 +6039,9 @@
  inline int g_isnan(double f) { return isnan(f); }
  #else
 diff -uNr ../orig/hotspot/src/share/vm/utilities/macros.hpp ./hotspot/src/share/vm/utilities/macros.hpp
---- ../orig/hotspot/src/share/vm/utilities/macros.hpp	2009-10-14 10:13:22.000000000 -0700
-+++ ./hotspot/src/share/vm/utilities/macros.hpp	2009-10-28 20:01:49.000000000 -0700
-@@ -154,6 +154,16 @@
+--- ../orig/hotspot/src/share/vm/utilities/macros.hpp	2010-04-15 11:31:28.000000000 +0400
++++ ./hotspot/src/share/vm/utilities/macros.hpp	2010-04-17 21:48:07.000000000 +0400
+@@ -156,6 +156,16 @@
  #define X86_ONLY(code)
  #endif
  
@@ -6322,8 +6059,8 @@
  #define IA32_ONLY(code) code
  #define NOT_IA32(code)
 diff -uNr ../orig/hotspot/src/share/vm/utilities/ostream.cpp ./hotspot/src/share/vm/utilities/ostream.cpp
---- ../orig/hotspot/src/share/vm/utilities/ostream.cpp	2009-10-14 10:13:22.000000000 -0700
-+++ ./hotspot/src/share/vm/utilities/ostream.cpp	2009-10-22 22:34:33.000000000 -0700
+--- ../orig/hotspot/src/share/vm/utilities/ostream.cpp	2010-04-15 11:31:28.000000000 +0400
++++ ./hotspot/src/share/vm/utilities/ostream.cpp	2010-04-17 21:48:07.000000000 +0400
 @@ -827,7 +827,7 @@
  
  #ifndef PRODUCT
@@ -6334,8 +6071,8 @@
  #include <sys/socket.h>
  #include <netinet/in.h>
 diff -uNr ../orig/hotspot/src/share/vm/utilities/vmError.cpp ./hotspot/src/share/vm/utilities/vmError.cpp
---- ../orig/hotspot/src/share/vm/utilities/vmError.cpp	2009-10-14 10:13:22.000000000 -0700
-+++ ./hotspot/src/share/vm/utilities/vmError.cpp	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/hotspot/src/share/vm/utilities/vmError.cpp	2010-04-15 11:31:28.000000000 +0400
++++ ./hotspot/src/share/vm/utilities/vmError.cpp	2010-04-17 21:48:07.000000000 +0400
 @@ -31,13 +31,18 @@
    "JAVA_HOME", "JRE_HOME", "JAVA_TOOL_OPTIONS", "_JAVA_OPTIONS", "CLASSPATH",
    "JAVA_COMPILER", "PATH", "USERNAME",
@@ -6356,19 +6093,7 @@
    // defined on Windows
    "OS", "PROCESSOR_IDENTIFIER", "_ALT_JAVA_HOME_DIR",
  
-@@ -674,6 +679,11 @@
-     reset_signal_handlers();
- 
-   } else {
-+    // If UseOsErrorReporting we call this for each level of the call stack
-+    // while searching for the exception handler.  Only the first level needs
-+    // to be reported.
-+    if (UseOSErrorReporting && log_done) return;
-+
-     // This is not the first error, see if it happened in a different thread
-     // or in the same thread during error reporting.
-     if (first_error_tid != mytid) {
-@@ -794,7 +804,7 @@
+@@ -834,7 +840,7 @@
      const char* ptr = OnError;
      while ((cmd = next_OnError_command(buffer, sizeof(buffer), &ptr)) != NULL){
        out.print_raw   ("#   Executing ");
@@ -6378,8 +6103,8 @@
  #elif defined(SOLARIS)
        out.print_raw   ("/usr/bin/sh -c ");
 diff -uNr ../orig/jdk/make/com/sun/java/pack/Makefile ./jdk/make/com/sun/java/pack/Makefile
---- ../orig/jdk/make/com/sun/java/pack/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/com/sun/java/pack/Makefile	2009-10-22 22:40:08.000000000 -0700
+--- ../orig/jdk/make/com/sun/java/pack/Makefile	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/com/sun/java/pack/Makefile	2010-04-17 21:48:07.000000000 +0400
 @@ -61,6 +61,7 @@
  
  
@@ -6412,8 +6137,8 @@
  # setup the list of libraries to link in...
  ifeq ($(PLATFORM), linux)
 diff -uNr ../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-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/com/sun/security/auth/module/Makefile	2009-10-22 22:40:28.000000000 -0700
+--- ../orig/jdk/make/com/sun/security/auth/module/Makefile	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/com/sun/security/auth/module/Makefile	2010-04-17 21:48:07.000000000 +0400
 @@ -70,7 +70,7 @@
    include FILES_c_solaris.gmk
  endif # solaris
@@ -6424,8 +6149,8 @@
    include FILES_export_unix.gmk
    include FILES_c_unix.gmk
 diff -uNr ../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-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/com/sun/tools/attach/Exportedfiles.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/com/sun/tools/attach/Exportedfiles.gmk	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/com/sun/tools/attach/Exportedfiles.gmk	2010-04-17 21:48:07.000000000 +0400
 @@ -43,5 +43,7 @@
  	sun/tools/attach/LinuxVirtualMachine.java
  endif
@@ -6437,8 +6162,8 @@
 +	sun/tools/attach/BsdVirtualMachine.java
 +endif
 diff -uNr ../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-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/com/sun/tools/attach/FILES_c.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/com/sun/tools/attach/FILES_c.gmk	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/com/sun/tools/attach/FILES_c.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -39,4 +39,7 @@
  	LinuxVirtualMachine.c
  endif
@@ -6449,8 +6174,8 @@
 +	BsdVirtualMachine.c
 +endif
 diff -uNr ../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-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/com/sun/tools/attach/FILES_java.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/com/sun/tools/attach/FILES_java.gmk	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/com/sun/tools/attach/FILES_java.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -43,6 +43,11 @@
  	sun/tools/attach/LinuxAttachProvider.java
  endif
@@ -6464,8 +6189,8 @@
  # Files that need to be copied
  #
 diff -uNr ../orig/jdk/make/com/sun/tools/attach/Makefile ./jdk/make/com/sun/tools/attach/Makefile
---- ../orig/jdk/make/com/sun/tools/attach/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/com/sun/tools/attach/Makefile	2009-10-22 22:40:37.000000000 -0700
+--- ../orig/jdk/make/com/sun/tools/attach/Makefile	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/com/sun/tools/attach/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -36,6 +36,9 @@
  ifeq ($(PLATFORM), linux)
  FILES_m = mapfile-linux
@@ -6477,8 +6202,8 @@
  
  #
 diff -uNr ../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-10-22 23:07:25.000000000 -0700
-+++ ./jdk/make/com/sun/tools/attach/mapfile-bsd	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/com/sun/tools/attach/mapfile-bsd	2010-04-17 21:43:54.000000000 +0400
++++ ./jdk/make/com/sun/tools/attach/mapfile-bsd	2010-04-17 21:48:08.000000000 +0400
 @@ -30,14 +30,12 @@
  	    Java_sun_tools_attach_BsdVirtualMachine_checkPermissions;
  	    Java_sun_tools_attach_BsdVirtualMachine_close;
@@ -6496,8 +6221,8 @@
  		*;
  };
 diff -uNr ../orig/jdk/make/common/Defs-bsd.gmk ./jdk/make/common/Defs-bsd.gmk
---- ../orig/jdk/make/common/Defs-bsd.gmk	2009-10-22 23:07:25.000000000 -0700
-+++ ./jdk/make/common/Defs-bsd.gmk	2009-10-27 14:30:43.000000000 -0700
+--- ../orig/jdk/make/common/Defs-bsd.gmk	2010-04-17 21:43:54.000000000 +0400
++++ ./jdk/make/common/Defs-bsd.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -43,12 +43,6 @@
  # Get shared JDK settings
  include $(JDK_MAKE_SHARED_DIR)/Defs.gmk
@@ -6531,7 +6256,7 @@
  CFLAGS_REQUIRED_ia64    += -fno-omit-frame-pointer -D_LITTLE_ENDIAN
  CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9
  LDFLAGS_COMMON_sparcv9  += -m64 -mcpu=v9
-@@ -184,7 +182,7 @@
+@@ -192,7 +190,7 @@
    CXXFLAGS_DBG	+= $(CC_LOWER_OPT)
  endif
  
@@ -6540,7 +6265,7 @@
  		  -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT
  
  ifeq ($(ARCH_DATA_MODEL), 64)
-@@ -194,33 +192,15 @@
+@@ -202,33 +200,15 @@
  CPPFLAGS_OPT    = 
  CPPFLAGS_DBG    = -DDEBUG
  
@@ -6562,7 +6287,7 @@
 -
 -EXTRA_LIBS += -lc
 -
--LDFLAGS_DEFS_OPTION  = -z defs
+-LDFLAGS_DEFS_OPTION  = -Xlinker -z -Xlinker defs
 -LDFLAGS_COMMON  += $(LDFLAGS_DEFS_OPTION)
 -
  #
@@ -6578,7 +6303,7 @@
  
  #
  # -static-libgcc is a gcc-3 flag to statically link libgcc, gcc-2.9x always
-@@ -242,9 +222,9 @@
+@@ -250,9 +230,9 @@
  ifeq ($(VARIANT), OPT)
    ifneq ($(NO_STRIP), true)
      ifneq ($(DEBUG_BINARIES), true)
@@ -6590,7 +6315,7 @@
      endif
    endif
  endif
-@@ -254,13 +234,9 @@
+@@ -262,13 +242,9 @@
  #
  LD_MAPFILE_FLAG = -Xlinker --version-script -Xlinker
  
@@ -6607,7 +6332,7 @@
  endif
  
  #
-@@ -289,7 +265,9 @@
+@@ -297,7 +273,9 @@
  override HAVE_FILIOH             = false
  override HAVE_GETHRTIME          = false
  override HAVE_GETHRVTIME         = false
@@ -6617,7 +6342,7 @@
  override LEX_LIBRARY             = -lfl
  ifeq ($(STATIC_CXX),true)
  override LIBCXX                  = -Wl,-Bstatic -lstdc++ -lgcc -Wl,-Bdynamic
-@@ -300,13 +278,9 @@
+@@ -308,13 +286,9 @@
  override LIBSOCKET               =
  override LIBTHREAD               =
  override MOOT_PRIORITIES         = true
@@ -6633,7 +6358,7 @@
  override OTHER_M4FLAGS           = -D__GLIBC__ -DGNU_ASSEMBLER
  override SUN_CMM_SUBDIR          =
  override THREADS_FLAG            = native
-@@ -327,6 +301,14 @@
+@@ -335,6 +309,14 @@
  # DPS (Displayable PostScript) is available on Solaris machines
  HAVE_DPS = no
  
@@ -6649,9 +6374,9 @@
  # Japanese manpages
  #
 diff -uNr ../orig/jdk/make/common/Defs-linux.gmk ./jdk/make/common/Defs-linux.gmk
---- ../orig/jdk/make/common/Defs-linux.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/Defs-linux.gmk	2009-10-28 20:01:49.000000000 -0700
-@@ -301,7 +301,7 @@
+--- ../orig/jdk/make/common/Defs-linux.gmk	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/common/Defs-linux.gmk	2010-04-17 21:48:08.000000000 +0400
+@@ -309,7 +309,7 @@
  override LIBTHREAD               =
  override MOOT_PRIORITIES         = true
  override NO_INTERRUPTIBLE_IO     = true
@@ -6661,8 +6386,8 @@
  override OPENWIN_LIB             = $(OPENWIN_HOME)/lib64
  else
 diff -uNr ../orig/jdk/make/common/Defs.gmk ./jdk/make/common/Defs.gmk
---- ../orig/jdk/make/common/Defs.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/Defs.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/Defs.gmk	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/common/Defs.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -188,6 +188,24 @@
  _OUTPUTDIR=$(JDK_TOPDIR)/build/$(PLATFORM)-$(ARCH)
  endif
@@ -6708,8 +6433,8 @@
  
  LDLIBS_COMMON += $(EXTRA_LIBS)
 diff -uNr ../orig/jdk/make/common/Program.gmk ./jdk/make/common/Program.gmk
---- ../orig/jdk/make/common/Program.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/Program.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/Program.gmk	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/common/Program.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -67,11 +67,27 @@
  # Create a dependency on libjli (Java Launcher Infrastructure)
  #
@@ -6768,12 +6493,12 @@
  OTHER_INCLUDES += -I$(SHARE_SRC)/native/java/util/zip/zlib-1.1.3
 +endif
  
- # this may not be necessary...
- ifeq ($(PLATFORM), windows)
+ OTHER_CPPFLAGS += -DPROGNAME='"$(PROGRAM)"'
+ VERSION_DEFINES += -DFULL_VERSION='"$(FULL_VERSION)"'
 diff -uNr ../orig/jdk/make/common/Release.gmk ./jdk/make/common/Release.gmk
---- ../orig/jdk/make/common/Release.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/Release.gmk	2009-10-30 09:39:14.000000000 -0700
-@@ -144,14 +144,13 @@
+--- ../orig/jdk/make/common/Release.gmk	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/common/Release.gmk	2010-04-17 21:48:08.000000000 +0400
+@@ -145,14 +145,13 @@
  	tnameserv.1     \
  	unpack200.1
  
@@ -6789,7 +6514,7 @@
  	extcheck.1         \
  	idlj.1             \
  	jar.1              \
-@@ -190,6 +189,11 @@
+@@ -191,6 +190,11 @@
    JA_DIRNAME=ja_JP.$(JA_SOURCE_ENCODING)
  endif # linux
  
@@ -6801,7 +6526,7 @@
  define copy-man-pages
  $(MKDIR) -p $1/man/man1
  for manbase in $(MANBASEDIRS:%=%/$(MAN1SUBDIR)) ; do \
-@@ -322,6 +326,12 @@
+@@ -323,6 +327,12 @@
    SOURCE_DIRS += $(CLOSED_SRC)/share/classes
  endif
  
@@ -6814,7 +6539,7 @@
  
  #
  # Specific files and directories that will be filtered out from above areas.
-@@ -636,6 +646,8 @@
+@@ -637,6 +647,8 @@
  	$(BOOT_JAVA_CMD) -jar $(JARSPLIT_JARFILE) \
  		$(TOTAL_JAR_FILELIST) \
  		-o  $(RT_JAR_FILELIST) $(RES_JAR_FILELIST)
@@ -6823,7 +6548,7 @@
  	@$(java-vm-cleanup)
  
  # Create the manifest file.
-@@ -979,7 +991,7 @@
+@@ -980,7 +992,7 @@
  	@# generated by the more efficient solaris/windows method of copying files.
  	@# So for Linux, make use of the -T option (like Solaris' -I option) of
  	@# obtaining the list of files from a file. MKS tar has no such option.
@@ -6832,7 +6557,7 @@
  	for d in $(SOURCE_DIRS); do \
  	  $(RM) $(ABS_TEMPDIR)/src-files.list; \
  	  ($(CD) $$d &&  \
-@@ -992,7 +1004,7 @@
+@@ -993,7 +1005,7 @@
  	    done ; \
  	  ) ; \
  	  if [ -f  $(ABS_TEMPDIR)/src-files.list ] ; then \
@@ -6842,8 +6567,8 @@
  	  fi; \
  	done
 diff -uNr ../orig/jdk/make/common/internal/BinaryPlugs.gmk ./jdk/make/common/internal/BinaryPlugs.gmk
---- ../orig/jdk/make/common/internal/BinaryPlugs.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/internal/BinaryPlugs.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/internal/BinaryPlugs.gmk	2010-04-15 11:35:10.000000000 +0400
++++ ./jdk/make/common/internal/BinaryPlugs.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -49,8 +49,6 @@
  com/sun/jmx/snmp/SnmpDataTypeEnums.class \
  com/sun/jmx/snmp/SnmpDefinitions.class \
@@ -6934,8 +6659,8 @@
      import-binary-plugs-completed
  
 diff -uNr ../orig/jdk/make/common/shared/Compiler-gcc.gmk ./jdk/make/common/shared/Compiler-gcc.gmk
---- ../orig/jdk/make/common/shared/Compiler-gcc.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/shared/Compiler-gcc.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/shared/Compiler-gcc.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/common/shared/Compiler-gcc.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -99,6 +99,24 @@
  
  endif
@@ -6962,8 +6687,8 @@
  
    # Settings specific to Solaris
 diff -uNr ../orig/jdk/make/common/shared/Compiler.gmk ./jdk/make/common/shared/Compiler.gmk
---- ../orig/jdk/make/common/shared/Compiler.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/shared/Compiler.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/shared/Compiler.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/common/shared/Compiler.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -37,8 +37,8 @@
    override CC_VERSION = sun
  endif
@@ -6976,8 +6701,8 @@
  endif
  
 diff -uNr ../orig/jdk/make/common/shared/Defs-bsd.gmk ./jdk/make/common/shared/Defs-bsd.gmk
---- ../orig/jdk/make/common/shared/Defs-bsd.gmk	2009-10-22 23:07:25.000000000 -0700
-+++ ./jdk/make/common/shared/Defs-bsd.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/shared/Defs-bsd.gmk	2010-04-17 21:43:54.000000000 +0400
++++ ./jdk/make/common/shared/Defs-bsd.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -70,7 +70,7 @@
  endef
  
@@ -7017,8 +6742,8 @@
  #    imported (or copied from) these import areas when needed.
  
 diff -uNr ../orig/jdk/make/common/shared/Defs-java.gmk ./jdk/make/common/shared/Defs-java.gmk
---- ../orig/jdk/make/common/shared/Defs-java.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/shared/Defs-java.gmk	2009-10-29 20:39:14.000000000 -0700
+--- ../orig/jdk/make/common/shared/Defs-java.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/common/shared/Defs-java.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -42,7 +42,7 @@
    #   Suspect this may not be needed anymore.
    JAVA_MEM_FLAGS   += -Xms$(MAX_VM_MEMORY)m -XX:-Inline
@@ -7029,8 +6754,8 @@
  
  # 
 diff -uNr ../orig/jdk/make/common/shared/Defs-utils.gmk ./jdk/make/common/shared/Defs-utils.gmk
---- ../orig/jdk/make/common/shared/Defs-utils.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/shared/Defs-utils.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/shared/Defs-utils.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/common/shared/Defs-utils.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -80,6 +80,13 @@
    endif
  endif
@@ -7079,8 +6804,8 @@
 +  endif
 +endif
 diff -uNr ../orig/jdk/make/common/shared/Defs.gmk ./jdk/make/common/shared/Defs.gmk
---- ../orig/jdk/make/common/shared/Defs.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/shared/Defs.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/shared/Defs.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/common/shared/Defs.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -143,7 +143,7 @@
          echo older; \
        else \
@@ -7091,9 +6816,9 @@
          else \
            echo newer; \
 diff -uNr ../orig/jdk/make/common/shared/Platform.gmk ./jdk/make/common/shared/Platform.gmk
---- ../orig/jdk/make/common/shared/Platform.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/shared/Platform.gmk	2009-10-28 20:01:49.000000000 -0700
-@@ -276,6 +276,76 @@
+--- ../orig/jdk/make/common/shared/Platform.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/common/shared/Platform.gmk	2010-04-17 21:48:08.000000000 +0400
+@@ -279,6 +279,76 @@
    MB_OF_MEMORY := $(shell free -m | fgrep Mem: | sed -e 's@\ \ *@ @g' | cut -d' ' -f2)
  endif
  
@@ -7170,7 +6895,7 @@
  # Windows with and without CYGWIN will be slightly different
  ifeq ($(SYSTEM_UNAME), Windows_NT)
    PLATFORM = windows
-@@ -392,6 +462,13 @@
+@@ -395,6 +465,13 @@
  #    system swapping during the build.
  #    If we don't know, assume 512. Subtract 128 from MB for VM MAX.
  #    Don't set VM max over 1024-128=896.
@@ -7184,7 +6909,7 @@
  ifneq ($(MB_OF_MEMORY),)
    LOW_MEMORY_MACHINE := $(shell \
      if [ $(MB_OF_MEMORY) -le 512 ] ; then \
-@@ -403,7 +480,7 @@
+@@ -406,7 +483,7 @@
      if [ $(MB_OF_MEMORY) -le 1024 ] ; then \
        expr $(MB_OF_MEMORY) '-' 128 ; \
      else \
@@ -7193,7 +6918,7 @@
      fi)
    MIN_VM_MEMORY := $(shell \
      if [ $(MAX_VM_MEMORY) -le 128 ] ; then \
-@@ -455,6 +532,15 @@
+@@ -458,6 +535,15 @@
    ARCH_VM_SUBDIR=jre/lib/$(LIBARCH)
  endif
  
@@ -7210,8 +6935,8 @@
  _USER1:=$(subst ', ,$(_USER))
  _USER2:=$(subst ", ,$(_USER1))
 diff -uNr ../orig/jdk/make/common/shared/Sanity-Settings.gmk ./jdk/make/common/shared/Sanity-Settings.gmk
---- ../orig/jdk/make/common/shared/Sanity-Settings.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/shared/Sanity-Settings.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/shared/Sanity-Settings.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/common/shared/Sanity-Settings.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -255,6 +255,7 @@
    ALL_SETTINGS+=$(call addHeading,OpenJDK-specific settings)
    ALL_SETTINGS+=$(call addAltSetting,FREETYPE_HEADERS_PATH)
@@ -7221,8 +6946,8 @@
    ALL_SETTINGS+=$(call addAltSetting,BINARY_PLUGS_JARFILE)
    ALL_SETTINGS+=$(call addAltSetting,BINARY_PLUGS_PATH)
 diff -uNr ../orig/jdk/make/common/shared/Sanity.gmk ./jdk/make/common/shared/Sanity.gmk
---- ../orig/jdk/make/common/shared/Sanity.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/common/shared/Sanity.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/common/shared/Sanity.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/common/shared/Sanity.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -96,6 +96,11 @@
      $(EGREP) "\#define" | $(NAWK) '{print $$3}')
  endif
@@ -7236,9 +6961,9 @@
  _MAKE_VER  :=$(shell $(MAKE) --version 2>&1 | $(HEAD) -n 1)
  _ZIP_VER   :=$(shell $(ZIPEXE) -help 2>&1 | $(HEAD) -n 4 | $(EGREP) '^Zip')
 diff -uNr ../orig/jdk/make/docs/Makefile ./jdk/make/docs/Makefile
---- ../orig/jdk/make/docs/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/docs/Makefile	2009-10-22 22:40:45.000000000 -0700
-@@ -232,7 +232,7 @@
+--- ../orig/jdk/make/docs/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/docs/Makefile	2010-04-17 21:48:08.000000000 +0400
+@@ -233,7 +233,7 @@
  #       you get "No packages or classes specified." due to $(CLASSPATH_SEPARATOR)
  #       being interpreted as an end of command (newline)
  
@@ -7248,8 +6973,8 @@
  JAAS_JAVADOCFLAGS = $(COMMON_JAVADOCFLAGS)			 \
  		   -encoding ascii			         \
 diff -uNr ../orig/jdk/make/java/Makefile ./jdk/make/java/Makefile
---- ../orig/jdk/make/java/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/Makefile	2009-10-22 22:40:56.000000000 -0700
+--- ../orig/jdk/make/java/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -49,7 +49,7 @@
    endif
  endif # PLATFORM
@@ -7260,8 +6985,8 @@
  endif # PLATFORM
  
 diff -uNr ../orig/jdk/make/java/hpi/hpi_common.gmk ./jdk/make/java/hpi/hpi_common.gmk
---- ../orig/jdk/make/java/hpi/hpi_common.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/hpi/hpi_common.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/java/hpi/hpi_common.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/hpi/hpi_common.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -86,5 +86,9 @@
  # Things that must be linked in.
  #
@@ -7273,8 +6998,8 @@
  endif
 +endif
 diff -uNr ../orig/jdk/make/java/hpi/native/Makefile ./jdk/make/java/hpi/native/Makefile
---- ../orig/jdk/make/java/hpi/native/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/hpi/native/Makefile	2009-10-22 22:41:04.000000000 -0700
+--- ../orig/jdk/make/java/hpi/native/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/hpi/native/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -72,11 +72,18 @@
  ifeq ($(MOOT_PRIORITIES),true)
  OTHER_CPPFLAGS += -DMOOT_PRIORITIES
@@ -7295,8 +7020,8 @@
  OTHER_CPPFLAGS += -DHAVE_GETHRVTIME
  endif
 diff -uNr ../orig/jdk/make/java/instrument/Makefile ./jdk/make/java/instrument/Makefile
---- ../orig/jdk/make/java/instrument/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/instrument/Makefile	2009-10-22 22:41:09.000000000 -0700
+--- ../orig/jdk/make/java/instrument/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/instrument/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -102,6 +102,21 @@
    # equivalent of strcasecmp is stricmp on Windows
    CPPFLAGS_COMMON += -Dstrcasecmp=stricmp
@@ -7328,8 +7053,8 @@
  #
  # Library to compile.
 diff -uNr ../orig/jdk/make/java/java/Makefile ./jdk/make/java/java/Makefile
---- ../orig/jdk/make/java/java/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/java/Makefile	2009-10-22 22:41:16.000000000 -0700
+--- ../orig/jdk/make/java/java/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/java/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -167,8 +167,10 @@
  # Is the altzone extern documented in ctime(3C) available?
  #
@@ -7357,8 +7082,8 @@
  #
  # Rules.
 diff -uNr ../orig/jdk/make/java/java/genlocales.gmk ./jdk/make/java/java/genlocales.gmk
---- ../orig/jdk/make/java/java/genlocales.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/java/genlocales.gmk	2009-11-04 09:30:45.000000000 -0800
+--- ../orig/jdk/make/java/java/genlocales.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/java/genlocales.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -1,5 +1,5 @@
  #
 -# Copyright 2005 Sun Microsystems, Inc.  All Rights Reserved.
@@ -7389,8 +7114,8 @@
  	@$(RM) $@.tmp.euro $@.tmp.noneuro;
  	
 diff -uNr ../orig/jdk/make/java/java/localegen.sh ./jdk/make/java/java/localegen.sh
---- ../orig/jdk/make/java/java/localegen.sh	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/java/localegen.sh	2009-11-04 09:34:06.000000000 -0800
+--- ../orig/jdk/make/java/java/localegen.sh	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/java/localegen.sh	2010-04-17 21:48:08.000000000 +0400
 @@ -1,7 +1,7 @@
  #!/bin/sh
  
@@ -7431,8 +7156,8 @@
  
  sed_script=$sed_script"$INPUT_FILE > $OUTPUT_FILE"
 diff -uNr ../orig/jdk/make/java/java_hprof_demo/Makefile ./jdk/make/java/java_hprof_demo/Makefile
---- ../orig/jdk/make/java/java_hprof_demo/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/java_hprof_demo/Makefile	2009-10-22 22:41:26.000000000 -0700
+--- ../orig/jdk/make/java/java_hprof_demo/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/java_hprof_demo/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -83,8 +83,10 @@
  ifeq ($(PLATFORM), windows)
    OTHER_LDLIBS += wsock32.lib winmm.lib
@@ -7445,8 +7170,8 @@
  #
  # Tell library.gmk to copy the txt file first
 diff -uNr ../orig/jdk/make/java/jli/Makefile ./jdk/make/java/jli/Makefile
---- ../orig/jdk/make/java/jli/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/jli/Makefile	2009-10-22 22:41:33.000000000 -0700
+--- ../orig/jdk/make/java/jli/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/jli/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -44,8 +44,10 @@
  
  include $(BUILDDIR)/common/Defs.gmk
@@ -7523,8 +7248,8 @@
 +
  
 diff -uNr ../orig/jdk/make/java/management/Makefile ./jdk/make/java/management/Makefile
---- ../orig/jdk/make/java/management/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/management/Makefile	2009-10-22 22:41:37.000000000 -0700
+--- ../orig/jdk/make/java/management/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/management/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -85,6 +85,11 @@
  OTHER_INCLUDES += \
    -I$(SHARE_SRC)/native/sun/management 
@@ -7538,8 +7263,8 @@
    OTHER_LDLIBS += $(JVMLIB)
  endif
 diff -uNr ../orig/jdk/make/java/net/FILES_c.gmk ./jdk/make/java/net/FILES_c.gmk
---- ../orig/jdk/make/java/net/FILES_c.gmk	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/net/FILES_c.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/java/net/FILES_c.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/net/FILES_c.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -43,6 +43,10 @@
      FILES_c += linux_close.c
  endif
@@ -7552,8 +7277,8 @@
      FILES_c += TwoStacksPlainSocketImpl.c
      FILES_c += DualStackPlainSocketImpl.c
 diff -uNr ../orig/jdk/make/java/net/Makefile ./jdk/make/java/net/Makefile
---- ../orig/jdk/make/java/net/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/net/Makefile	2009-10-22 22:41:44.000000000 -0700
+--- ../orig/jdk/make/java/net/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/net/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -92,6 +92,12 @@
  
  include $(BUILDDIR)/common/Library.gmk
@@ -7576,8 +7301,8 @@
  CLASSES.export += java.lang.Integer java.io.FileDescriptor java.net.InetAddressImplFactory java.net.Inet4AddressImpl java.net.Inet6AddressImpl
  
 diff -uNr ../orig/jdk/make/java/nio/Makefile ./jdk/make/java/nio/Makefile
---- ../orig/jdk/make/java/nio/Makefile	2009-10-14 10:17:14.000000000 -0700
-+++ ./jdk/make/java/nio/Makefile	2009-10-22 22:41:52.000000000 -0700
+--- ../orig/jdk/make/java/nio/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/nio/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -82,7 +82,7 @@
  	sun/nio/ch/WindowsSelectorImpl.java
  endif # PLATFORM = windows
@@ -7620,8 +7345,8 @@
  include $(BUILDDIR)/common/Library.gmk
  
 diff -uNr ../orig/jdk/make/java/npt/Makefile ./jdk/make/java/npt/Makefile
---- ../orig/jdk/make/java/npt/Makefile	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/java/npt/Makefile	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/java/npt/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/npt/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -70,6 +70,18 @@
    OTHER_LCF += -export:nptInitialize -export:nptTerminate
  endif
@@ -7642,8 +7367,8 @@
  # Add to ambient vpath so we pick up the library files
  #
 diff -uNr ../orig/jdk/make/java/redist/FILES.gmk ./jdk/make/java/redist/FILES.gmk
---- ../orig/jdk/make/java/redist/FILES.gmk	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/java/redist/FILES.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/java/redist/FILES.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/redist/FILES.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -38,6 +38,14 @@
  	$(LIBDIR)/fonts/LucidaSansDemiBold.ttf       	\
  
@@ -7660,9 +7385,9 @@
  # 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 -uNr ../orig/jdk/make/java/redist/Makefile ./jdk/make/java/redist/Makefile
---- ../orig/jdk/make/java/redist/Makefile	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/java/redist/Makefile	2009-10-22 22:41:58.000000000 -0700
-@@ -312,7 +312,7 @@
+--- ../orig/jdk/make/java/redist/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/redist/Makefile	2010-04-17 21:48:08.000000000 +0400
+@@ -317,7 +317,7 @@
  $(FONTSDIRFILE): $(PLATFORM_SRC)/classes/sun/awt/motif/java.fonts.dir
  	$(install-file)
  
@@ -7671,7 +7396,7 @@
  
  # The oblique fonts are only needed/wanted on Linux.
  
-@@ -326,7 +326,7 @@
+@@ -331,7 +331,7 @@
  $(OBLFONTSDIRFILE): $(PLATFORM_SRC)/classes/sun/awt/motif/java.oblique-fonts.dir
  	$(install-file)
  
@@ -7681,8 +7406,8 @@
  
  # Import internal files (ones that are stashed in this source tree)
 diff -uNr ../orig/jdk/make/java/security/Makefile ./jdk/make/java/security/Makefile
---- ../orig/jdk/make/java/security/Makefile	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/java/security/Makefile	2009-10-22 22:42:05.000000000 -0700
+--- ../orig/jdk/make/java/security/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/security/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -51,7 +51,15 @@
    ifneq ($(ARCH_DATA_MODEL), 64)
      PROPS_SRC   = $(TOPDIR)/src/share/lib/security/java.security-windows
@@ -7700,8 +7425,8 @@
  
  
 diff -uNr ../orig/jdk/make/java/zip/FILES_c.gmk ./jdk/make/java/zip/FILES_c.gmk
---- ../orig/jdk/make/java/zip/FILES_c.gmk	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/java/zip/FILES_c.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/java/zip/FILES_c.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/zip/FILES_c.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -30,6 +30,10 @@
  	Inflater.c \
  	ZipFile.c \
@@ -7722,8 +7447,8 @@
 +	inffast.c
 +endif
 diff -uNr ../orig/jdk/make/java/zip/Makefile ./jdk/make/java/zip/Makefile
---- ../orig/jdk/make/java/zip/Makefile	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/java/zip/Makefile	2009-10-22 22:42:10.000000000 -0700
+--- ../orig/jdk/make/java/zip/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/java/zip/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -72,16 +72,24 @@
  CPPFLAGS += -UDEBUG 
  endif
@@ -7750,9 +7475,21 @@
  OTHER_LDLIBS = $(JVMLIB)
 +endif
 +
+diff -uNr ../orig/jdk/make/javax/crypto/Makefile ./jdk/make/javax/crypto/Makefile
+--- ../orig/jdk/make/javax/crypto/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/javax/crypto/Makefile	2010-04-17 21:48:08.000000000 +0400
+@@ -155,7 +155,7 @@
+ #
+ 
+ ifdef OPENJDK
+-all: build-jar install-jar build-policy install-limited
++all: build-jar install-jar build-policy install-unlimited
+ else  # OPENJDK
+ ifeq ($(strip $(FILES_java)),)
+ all:
 diff -uNr ../orig/jdk/make/javax/sound/FILES_c.gmk ./jdk/make/javax/sound/FILES_c.gmk
---- ../orig/jdk/make/javax/sound/FILES_c.gmk	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/javax/sound/FILES_c.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/javax/sound/FILES_c.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/javax/sound/FILES_c.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -34,6 +34,8 @@
  
  FILES_linux = 
@@ -7763,8 +7500,8 @@
  	PLATFORM_API_WinOS_MidiIn.c \
  	PLATFORM_API_WinOS_MidiOut.c \
 diff -uNr ../orig/jdk/make/javax/sound/Makefile ./jdk/make/javax/sound/Makefile
---- ../orig/jdk/make/javax/sound/Makefile	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/javax/sound/Makefile	2009-10-22 22:42:17.000000000 -0700
+--- ../orig/jdk/make/javax/sound/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/javax/sound/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -107,6 +107,19 @@
    #MXSPP_ADD = $(PLATFORM)-$(ARCH)/
  endif # PLATFORM linux
@@ -7786,8 +7523,8 @@
    ifneq ($(ARCH), amd64)
      # build with ports and direct audio
 diff -uNr ../orig/jdk/make/javax/sound/SoundDefs.gmk ./jdk/make/javax/sound/SoundDefs.gmk
---- ../orig/jdk/make/javax/sound/SoundDefs.gmk	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/javax/sound/SoundDefs.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/javax/sound/SoundDefs.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/javax/sound/SoundDefs.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -40,6 +40,10 @@
    CPPFLAGS += -DX_PLATFORM=X_LINUX
  endif # PLATFORM linux
@@ -7800,8 +7537,8 @@
    CPPFLAGS += -DX_PLATFORM=X_SOLARIS
  
 diff -uNr ../orig/jdk/make/jpda/back/Makefile ./jdk/make/jpda/back/Makefile
---- ../orig/jdk/make/jpda/back/Makefile	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/jpda/back/Makefile	2009-10-22 22:42:26.000000000 -0700
+--- ../orig/jdk/make/jpda/back/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/jpda/back/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -49,8 +49,10 @@
                   -I$(GENNATIVESRCDIR)/jdwp
  
@@ -7814,8 +7551,8 @@
  #
  # This turns off all assert() checking in the optimized library
 diff -uNr ../orig/jdk/make/sun/awt/Makefile ./jdk/make/sun/awt/Makefile
---- ../orig/jdk/make/sun/awt/Makefile	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/sun/awt/Makefile	2009-10-22 22:43:07.000000000 -0700
+--- ../orig/jdk/make/sun/awt/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/sun/awt/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -129,6 +129,14 @@
  OTHER_LDLIBS = $(JVMLIB) $(LIBM) -ldl
  endif
@@ -7886,8 +7623,8 @@
  endif
  
 diff -uNr ../orig/jdk/make/sun/awt/mawt.gmk ./jdk/make/sun/awt/mawt.gmk
---- ../orig/jdk/make/sun/awt/mawt.gmk	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/sun/awt/mawt.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/sun/awt/mawt.gmk	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/sun/awt/mawt.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -174,7 +174,7 @@
  OTHER_LDLIBS = $(LIBXM) -lXt -lXext $(LIBXTST) $(LIBXMU) -lX11 -lXi
  endif
@@ -7945,8 +7682,8 @@
  LDFLAGS += -L$(LIBDIR)/$(LIBARCH)/$(TSOBJDIR) \
  	   $(AWT_RUNPATH)
 diff -uNr ../orig/jdk/make/sun/font/Makefile ./jdk/make/sun/font/Makefile
---- ../orig/jdk/make/sun/font/Makefile	2009-10-14 10:17:15.000000000 -0700
-+++ ./jdk/make/sun/font/Makefile	2009-10-22 22:43:11.000000000 -0700
+--- ../orig/jdk/make/sun/font/Makefile	2010-04-15 11:35:11.000000000 +0400
++++ ./jdk/make/sun/font/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -177,6 +177,15 @@
  # Libraries to link, and other C flags.
  #
@@ -7972,8 +7709,8 @@
  endif # PLATFORM
  
 diff -uNr ../orig/jdk/make/sun/image/generic/Makefile ./jdk/make/sun/image/generic/Makefile
---- ../orig/jdk/make/sun/image/generic/Makefile	2009-10-14 10:17:16.000000000 -0700
-+++ ./jdk/make/sun/image/generic/Makefile	2009-10-22 22:43:17.000000000 -0700
+--- ../orig/jdk/make/sun/image/generic/Makefile	2010-04-15 11:35:12.000000000 +0400
++++ ./jdk/make/sun/image/generic/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -69,5 +69,9 @@
              -I$(PLATFORM_SRC)/native/$(PKGDIR)/medialib 
  
@@ -7986,8 +7723,8 @@
 +
  
 diff -uNr ../orig/jdk/make/sun/jawt/Makefile ./jdk/make/sun/jawt/Makefile
---- ../orig/jdk/make/sun/jawt/Makefile	2009-10-14 10:17:16.000000000 -0700
-+++ ./jdk/make/sun/jawt/Makefile	2009-10-22 22:43:25.000000000 -0700
+--- ../orig/jdk/make/sun/jawt/Makefile	2010-04-15 11:35:12.000000000 +0400
++++ ./jdk/make/sun/jawt/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -98,9 +98,7 @@
  #
  # Other extra flags needed for compiling.
@@ -8018,8 +7755,8 @@
  endif # PLATFORM
  
 diff -uNr ../orig/jdk/make/sun/security/jgss/wrapper/Makefile ./jdk/make/sun/security/jgss/wrapper/Makefile
---- ../orig/jdk/make/sun/security/jgss/wrapper/Makefile	2009-10-14 10:17:16.000000000 -0700
-+++ ./jdk/make/sun/security/jgss/wrapper/Makefile	2009-10-22 22:43:35.000000000 -0700
+--- ../orig/jdk/make/sun/security/jgss/wrapper/Makefile	2010-04-15 11:35:12.000000000 +0400
++++ ./jdk/make/sun/security/jgss/wrapper/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -71,6 +71,10 @@
  #
  # Libraries to link
@@ -8033,8 +7770,8 @@
 +  OTHER_LDLIBS = $(JVMLIB)
 +endif
 diff -uNr ../orig/jdk/make/sun/security/pkcs11/Makefile ./jdk/make/sun/security/pkcs11/Makefile
---- ../orig/jdk/make/sun/security/pkcs11/Makefile	2009-10-14 10:17:16.000000000 -0700
-+++ ./jdk/make/sun/security/pkcs11/Makefile	2009-10-22 22:43:41.000000000 -0700
+--- ../orig/jdk/make/sun/security/pkcs11/Makefile	2010-04-15 11:35:12.000000000 +0400
++++ ./jdk/make/sun/security/pkcs11/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -155,7 +155,7 @@
  #
  # Libraries to link
@@ -8045,8 +7782,8 @@
  else
    OTHER_LDLIBS = -ldl $(JVMLIB)
 diff -uNr ../orig/jdk/make/sun/security/smartcardio/Makefile ./jdk/make/sun/security/smartcardio/Makefile
---- ../orig/jdk/make/sun/security/smartcardio/Makefile	2009-10-14 10:17:16.000000000 -0700
-+++ ./jdk/make/sun/security/smartcardio/Makefile	2009-10-22 22:43:46.000000000 -0700
+--- ../orig/jdk/make/sun/security/smartcardio/Makefile	2010-04-15 11:35:12.000000000 +0400
++++ ./jdk/make/sun/security/smartcardio/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -75,6 +75,10 @@
  ifeq ($(PLATFORM), windows)
    OTHER_LDLIBS = $(JVMLIB) winscard.lib
@@ -8060,8 +7797,8 @@
    OTHER_CFLAGS = -D__sun_jdk
  endif
 diff -uNr ../orig/jdk/make/sun/splashscreen/FILES_c.gmk ./jdk/make/sun/splashscreen/FILES_c.gmk
---- ../orig/jdk/make/sun/splashscreen/FILES_c.gmk	2009-10-14 10:17:16.000000000 -0700
-+++ ./jdk/make/sun/splashscreen/FILES_c.gmk	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/make/sun/splashscreen/FILES_c.gmk	2010-04-15 11:35:12.000000000 +0400
++++ ./jdk/make/sun/splashscreen/FILES_c.gmk	2010-04-17 21:48:08.000000000 +0400
 @@ -49,20 +49,6 @@
  	dgif_lib.c \
  	gif_err.c \
@@ -8105,8 +7842,8 @@
 +	zutil.c
 +endif
 diff -uNr ../orig/jdk/make/sun/splashscreen/Makefile ./jdk/make/sun/splashscreen/Makefile
---- ../orig/jdk/make/sun/splashscreen/Makefile	2009-10-14 10:17:16.000000000 -0700
-+++ ./jdk/make/sun/splashscreen/Makefile	2009-10-22 22:43:58.000000000 -0700
+--- ../orig/jdk/make/sun/splashscreen/Makefile	2010-04-15 11:35:12.000000000 +0400
++++ ./jdk/make/sun/splashscreen/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -61,10 +61,26 @@
  
  CFLAGS += -DSPLASHSCREEN
@@ -8155,8 +7892,8 @@
    ifeq ($(ARCH_DATA_MODEL), 64)
      # 64-bit gcc has problems compiling MMX instructions.
 diff -uNr ../orig/jdk/make/sun/xawt/Makefile ./jdk/make/sun/xawt/Makefile
---- ../orig/jdk/make/sun/xawt/Makefile	2009-10-14 10:17:16.000000000 -0700
-+++ ./jdk/make/sun/xawt/Makefile	2009-10-22 22:44:03.000000000 -0700
+--- ../orig/jdk/make/sun/xawt/Makefile	2010-04-15 11:35:12.000000000 +0400
++++ ./jdk/make/sun/xawt/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -53,6 +53,11 @@
  dummy := $(shell $(MKDIR) -p $(LIB_LOCATION))
  endif
@@ -8221,8 +7958,8 @@
    CPPFLAGS += -DINTERNAL_BUILD
  endif
 diff -uNr ../orig/jdk/make/tools/freetypecheck/Makefile ./jdk/make/tools/freetypecheck/Makefile
---- ../orig/jdk/make/tools/freetypecheck/Makefile	2009-10-14 10:17:16.000000000 -0700
-+++ ./jdk/make/tools/freetypecheck/Makefile	2009-10-22 22:44:11.000000000 -0700
+--- ../orig/jdk/make/tools/freetypecheck/Makefile	2010-04-15 11:35:12.000000000 +0400
++++ ./jdk/make/tools/freetypecheck/Makefile	2010-04-17 21:48:08.000000000 +0400
 @@ -60,8 +60,12 @@
    #add runtime lib search path to ensure test will be runnable
    ifeq ($(PLATFORM), solaris)
@@ -8239,8 +7976,8 @@
  endif
  
 diff -uNr ../orig/jdk/src/share/back/commonRef.c ./jdk/src/share/back/commonRef.c
---- ../orig/jdk/src/share/back/commonRef.c	2009-10-14 10:17:18.000000000 -0700
-+++ ./jdk/src/share/back/commonRef.c	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/back/commonRef.c	2010-04-15 11:35:13.000000000 +0400
++++ ./jdk/src/share/back/commonRef.c	2010-04-17 21:48:08.000000000 +0400
 @@ -23,6 +23,10 @@
   * have any questions.
   */
@@ -8253,8 +7990,8 @@
  #include "commonRef.h"
  
 diff -uNr ../orig/jdk/src/share/bin/java.c ./jdk/src/share/bin/java.c
---- ../orig/jdk/src/share/bin/java.c	2009-10-14 10:17:18.000000000 -0700
-+++ ./jdk/src/share/bin/java.c	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/bin/java.c	2010-04-15 11:35:13.000000000 +0400
++++ ./jdk/src/share/bin/java.c	2010-04-17 21:48:08.000000000 +0400
 @@ -104,6 +104,11 @@
  static char *launchername;
  jboolean _launcher_debug = JNI_FALSE;
@@ -8450,8 +8187,8 @@
  FreeKnownVMs()
  {
 diff -uNr ../orig/jdk/src/share/bin/java.h ./jdk/src/share/bin/java.h
---- ../orig/jdk/src/share/bin/java.h	2009-10-14 10:17:18.000000000 -0700
-+++ ./jdk/src/share/bin/java.h	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/bin/java.h	2010-04-15 11:35:13.000000000 +0400
++++ ./jdk/src/share/bin/java.h	2010-04-17 21:48:08.000000000 +0400
 @@ -91,11 +91,17 @@
  void PrintMachineDependentOptions();
  
@@ -8473,8 +8210,8 @@
  /* sun.java.launcher.* platform properties. */
  void SetJavaLauncherPlatformProps(void);
 diff -uNr ../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-10-14 10:17:19.000000000 -0700
-+++ ./jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java	2010-04-15 11:35:14.000000000 +0400
++++ ./jdk/src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java	2010-04-17 21:48:08.000000000 +0400
 @@ -477,6 +477,10 @@
                  String[] dirs = new String[] {
                      userHome + sep + ".themes",
@@ -8487,8 +8224,8 @@
                      "/usr/gnome/share/themes",  // Debian/Redhat/Solaris
                      "/opt/gnome2/share/themes"  // SuSE
 diff -uNr ../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-10-14 10:17:20.000000000 -0700
-+++ ./jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java	2010-04-15 11:35:16.000000000 +0400
++++ ./jdk/src/share/classes/com/sun/jmx/snmp/SnmpPduTrap.java	2010-04-17 21:48:08.000000000 +0400
 @@ -78,6 +78,9 @@
       */
      public long            timeStamp ;
@@ -8500,8 +8237,8 @@
  
      /**
 diff -uNr ../orig/jdk/src/share/classes/java/awt/Font.java ./jdk/src/share/classes/java/awt/Font.java
---- ../orig/jdk/src/share/classes/java/awt/Font.java	2009-10-14 10:17:25.000000000 -0700
-+++ ./jdk/src/share/classes/java/awt/Font.java	2009-11-02 17:34:53.000000000 -0800
+--- ../orig/jdk/src/share/classes/java/awt/Font.java	2010-04-15 11:35:20.000000000 +0400
++++ ./jdk/src/share/classes/java/awt/Font.java	2010-04-17 21:48:08.000000000 +0400
 @@ -445,18 +445,19 @@
       */
      private AttributeValues getAttributeValues() {
@@ -8529,8 +8266,8 @@
  
          return values;
 diff -uNr ../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-10-14 10:17:25.000000000 -0700
-+++ ./jdk/src/share/classes/java/awt/GraphicsEnvironment.java	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/classes/java/awt/GraphicsEnvironment.java	2010-04-15 11:35:20.000000000 +0400
++++ ./jdk/src/share/classes/java/awt/GraphicsEnvironment.java	2010-04-17 21:48:08.000000000 +0400
 @@ -148,7 +148,12 @@
                          } else {
                              String osName = System.getProperty("os.name");
@@ -8546,9 +8283,9 @@
                          }
                      } else if (nm.equals("true")) {
 diff -uNr ../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-10-14 10:17:30.000000000 -0700
-+++ ./jdk/src/share/classes/java/util/TimeZone.java	2009-10-28 20:01:49.000000000 -0700
-@@ -779,15 +779,13 @@
+--- ../orig/jdk/src/share/classes/java/util/TimeZone.java	2010-04-15 11:35:24.000000000 +0400
++++ ./jdk/src/share/classes/java/util/TimeZone.java	2010-04-17 21:48:08.000000000 +0400
+@@ -776,15 +776,13 @@
          }
          int gmtOffset =  (hours * 60 + num) * 60 * 1000;
  
@@ -8566,8 +8303,8 @@
          return zi;
      }
 diff -uNr ../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-10-14 10:17:37.000000000 -0700
-+++ ./jdk/src/share/classes/sun/awt/FontConfiguration.java	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/awt/FontConfiguration.java	2010-04-15 11:35:31.000000000 +0400
++++ ./jdk/src/share/classes/sun/awt/FontConfiguration.java	2010-04-17 21:48:08.000000000 +0400
 @@ -1073,7 +1073,7 @@
       */
      HashMap<String, Boolean> existsMap;
@@ -8587,8 +8324,8 @@
                  }
              }
 diff -uNr ../orig/jdk/src/share/classes/sun/font/TrueTypeFont.java ./jdk/src/share/classes/sun/font/TrueTypeFont.java
---- ../orig/jdk/src/share/classes/sun/font/TrueTypeFont.java	2009-10-14 10:17:38.000000000 -0700
-+++ ./jdk/src/share/classes/sun/font/TrueTypeFont.java	2009-11-02 17:35:36.000000000 -0800
+--- ../orig/jdk/src/share/classes/sun/font/TrueTypeFont.java	2010-04-15 11:35:32.000000000 +0400
++++ ./jdk/src/share/classes/sun/font/TrueTypeFont.java	2010-04-17 21:48:08.000000000 +0400
 @@ -159,6 +159,13 @@
      private boolean supportsJA;
      private boolean supportsCJK;
@@ -8700,8 +8437,8 @@
                  return name;
              }
 diff -uNr ../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-10-14 10:17:39.000000000 -0700
-+++ ./jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java	2010-04-15 11:35:33.000000000 +0400
++++ ./jdk/src/share/classes/sun/java2d/SunGraphicsEnvironment.java	2010-04-17 21:48:08.000000000 +0400
 @@ -76,7 +76,7 @@
  public abstract class SunGraphicsEnvironment extends GraphicsEnvironment
      implements FontSupport, DisplayChangedListener {
@@ -8740,8 +8477,8 @@
                  }
                  registerFontsInDir(jreFontDirName, true, Font2D.JRE_RANK,
 diff -uNr ../orig/jdk/src/share/classes/sun/java2d/pisces/PiscesCache.java ./jdk/src/share/classes/sun/java2d/pisces/PiscesCache.java
---- ../orig/jdk/src/share/classes/sun/java2d/pisces/PiscesCache.java	2009-10-14 10:17:40.000000000 -0700
-+++ ./jdk/src/share/classes/sun/java2d/pisces/PiscesCache.java	2009-11-02 17:39:03.000000000 -0800
+--- ../orig/jdk/src/share/classes/sun/java2d/pisces/PiscesCache.java	2010-04-15 11:35:33.000000000 +0400
++++ ./jdk/src/share/classes/sun/java2d/pisces/PiscesCache.java	2010-04-17 21:48:08.000000000 +0400
 @@ -96,7 +96,7 @@
              bboxX1 = x1+1;
          } else {
@@ -8752,8 +8489,8 @@
                  reallocRowInfo(alphaRows+1);
                  minTouched[alphaRows] = 0;
 diff -uNr ../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-10-14 10:17:44.000000000 -0700
-+++ ./jdk/src/share/classes/sun/print/PSPrinterJob.java	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/print/PSPrinterJob.java	2010-04-15 11:35:37.000000000 +0400
++++ ./jdk/src/share/classes/sun/print/PSPrinterJob.java	2010-04-17 21:48:08.000000000 +0400
 @@ -1531,7 +1531,9 @@
              pFlags |= NOSHEET;
              ncomps+=1;
@@ -8766,8 +8503,8 @@
              execCmd[n++] = "/usr/bin/lpr";
              if ((pFlags & PRINTER) != 0) {
 diff -uNr ../orig/jdk/src/share/classes/sun/security/jgss/GSSManagerImpl.java ./jdk/src/share/classes/sun/security/jgss/GSSManagerImpl.java
---- ../orig/jdk/src/share/classes/sun/security/jgss/GSSManagerImpl.java	2009-10-14 10:17:45.000000000 -0700
-+++ ./jdk/src/share/classes/sun/security/jgss/GSSManagerImpl.java	2009-10-29 20:27:08.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/security/jgss/GSSManagerImpl.java	2010-04-15 11:35:38.000000000 +0400
++++ ./jdk/src/share/classes/sun/security/jgss/GSSManagerImpl.java	2010-04-17 21:48:08.000000000 +0400
 @@ -49,8 +49,12 @@
              AccessController.doPrivileged(new PrivilegedAction<Boolean>() {
                      public Boolean run() {
@@ -8784,8 +8521,8 @@
                                      (USE_NATIVE_PROP));
                              }
 diff -uNr ../orig/jdk/src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java ./jdk/src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java
---- ../orig/jdk/src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java	2009-10-14 10:17:45.000000000 -0700
-+++ ./jdk/src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java	2009-10-29 20:27:08.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java	2010-04-15 11:35:38.000000000 +0400
++++ ./jdk/src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java	2010-04-17 21:48:08.000000000 +0400
 @@ -82,7 +82,11 @@
                              String osname = System.getProperty("os.name");
                              if (osname.startsWith("SunOS")) {
@@ -8800,8 +8537,8 @@
                              }
                          }
 diff -uNr ../orig/jdk/src/share/classes/sun/security/krb5/Config.java ./jdk/src/share/classes/sun/security/krb5/Config.java
---- ../orig/jdk/src/share/classes/sun/security/krb5/Config.java	2009-10-14 10:17:45.000000000 -0700
-+++ ./jdk/src/share/classes/sun/security/krb5/Config.java	2009-10-29 20:27:08.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/security/krb5/Config.java	2010-04-15 11:35:38.000000000 +0400
++++ ./jdk/src/share/classes/sun/security/krb5/Config.java	2010-04-17 21:48:08.000000000 +0400
 @@ -711,7 +711,11 @@
                      }
                  } else if (osname.startsWith("SunOS")) {
@@ -8816,8 +8553,8 @@
                  }
              }
 diff -uNr ../orig/jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java ./jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java
---- ../orig/jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java	2009-10-14 10:17:46.000000000 -0700
-+++ ./jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java	2009-10-29 20:27:08.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java	2010-04-15 11:35:39.000000000 +0400
++++ ./jdk/src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java	2010-04-17 21:48:08.000000000 +0400
 @@ -383,8 +383,12 @@
              String uidStr = null;
              long uid = 0;
@@ -8834,16 +8571,16 @@
                      Class<?> c = Class.forName
                          ("com.sun.security.auth.module.UnixSystem");
 diff -uNr ../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-10-14 10:17:48.000000000 -0700
-+++ ./jdk/src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider	2010-04-15 11:35:41.000000000 +0400
++++ ./jdk/src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider	2010-04-17 21:48:08.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 -uNr ../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-10-14 10:17:48.000000000 -0700
-+++ ./jdk/src/share/classes/sun/tools/jar/Main.java	2009-10-28 20:36:56.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/tools/jar/Main.java	2010-04-15 11:35:41.000000000 +0400
++++ ./jdk/src/share/classes/sun/tools/jar/Main.java	2010-04-17 21:48:08.000000000 +0400
 @@ -48,6 +48,7 @@
      String zname = "";
      String[] files;
@@ -8892,8 +8629,8 @@
                      throw new IOException(formatMsg(
                          "error.create.dir", d.getPath()));
 diff -uNr ../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-10-14 10:17:48.000000000 -0700
-+++ ./jdk/src/share/classes/sun/tools/jar/resources/jar.properties	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/classes/sun/tools/jar/resources/jar.properties	2010-04-15 11:35:41.000000000 +0400
++++ ./jdk/src/share/classes/sun/tools/jar/resources/jar.properties	2010-04-17 21:48:08.000000000 +0400
 @@ -44,6 +44,8 @@
          {0} : could not create directory
  error.incorrect.length=\
@@ -8904,8 +8641,8 @@
          added manifest
  out.update.manifest=\
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/hpi/include/hpi_impl.h	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/hpi/include/hpi_impl.h	2010-04-15 11:35:44.000000000 +0400
++++ ./jdk/src/share/hpi/include/hpi_impl.h	2010-04-17 21:48:08.000000000 +0400
 @@ -138,7 +138,11 @@
  int sysBind(int fd, struct sockaddr *him, int len);
  int sysAccept(int fd, struct sockaddr *him, int *len);
@@ -8920,8 +8657,8 @@
                int tolen);
  ssize_t sysRecvFrom(int fd, char *buf, int nbytes, int flags,
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/native/com/sun/java/util/jar/pack/defines.h	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/defines.h	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/com/sun/java/util/jar/pack/defines.h	2010-04-17 21:48:08.000000000 +0400
 @@ -32,6 +32,10 @@
  #include <unistd.h>
  #endif
@@ -8948,8 +8685,8 @@
  typedef LONGLONG        jlong;
  typedef DWORDLONG       julong;
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/com/sun/java/util/jar/pack/main.cpp	2010-04-17 21:48:08.000000000 +0400
 @@ -33,9 +33,14 @@
  #include <limits.h>
  #include <time.h>
@@ -8988,8 +8725,8 @@
  }
  
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c	2010-04-17 21:48:08.000000000 +0400
 @@ -33,7 +33,11 @@
  
  #include <jni.h>
@@ -9003,8 +8740,8 @@
  #include "DirectAudio.h"
  #include "Utilities.h"
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/native/com/sun/media/sound/Platform.c	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/com/sun/media/sound/Platform.c	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/com/sun/media/sound/Platform.c	2010-04-17 21:48:08.000000000 +0400
 @@ -99,5 +99,17 @@
          return com_sun_media_sound_Platform_LIB_ALSA;
      }
@@ -9024,8 +8761,8 @@
      return 0;
  }
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/native/com/sun/media/sound/SoundDefs.h	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/com/sun/media/sound/SoundDefs.h	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/com/sun/media/sound/SoundDefs.h	2010-04-17 21:48:08.000000000 +0400
 @@ -31,6 +31,7 @@
  #define X_WINDOWS       1
  #define X_SOLARIS       2
@@ -9034,7 +8771,7 @@
  
  // types for X_ARCH
  #define X_I586          1
-@@ -49,7 +50,7 @@
+@@ -50,7 +51,7 @@
  
  
  // following is needed for _LP64
@@ -9043,7 +8780,7 @@
  #include <sys/types.h>
  #endif
  
-@@ -129,4 +130,9 @@
+@@ -130,4 +131,9 @@
  #endif
  
  
@@ -9054,8 +8791,8 @@
 +
  #endif  // __SOUNDDEFS_INCLUDED__
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/native/common/check_code.c	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/common/check_code.c	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/common/check_code.c	2010-04-17 21:48:08.000000000 +0400
 @@ -1069,7 +1069,7 @@
   * Make sure that branches don't go into the middle of nowhere.
   */
@@ -9118,8 +8855,8 @@
               * on per-method byte code length.
               */
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/native/java/io/io_util.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/java/io/io_util.h	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/java/io/io_util.h	2010-04-17 21:48:08.000000000 +0400
 @@ -29,7 +29,15 @@
  extern jfieldID IO_fd_fdID;
  extern jfieldID IO_handle_fdID;
@@ -9138,8 +8875,8 @@
  #define O_DSYNC (0x2000)
  #endif
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h	2010-04-17 21:48:08.000000000 +0400
 @@ -25,6 +25,10 @@
   * have any questions.
   */
@@ -9166,8 +8903,8 @@
  /*
   * ANSI/POSIX
 diff -uNr ../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-10-14 10:17:52.000000000 -0700
-+++ ./jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h	2010-04-17 21:48:08.000000000 +0400
 @@ -61,7 +61,7 @@
  #define log1p   jlog1p
  #define expm1   jexpm1
@@ -9178,22 +8915,22 @@
  #define __ieee754_acos          __j__ieee754_acos
  #define __ieee754_acosh         __j__ieee754_acosh
 diff -uNr ../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-10-14 10:17:53.000000000 -0700
-+++ ./jdk/src/share/native/java/util/zip/Inflater.c	2009-10-28 20:01:49.000000000 -0700
-@@ -67,6 +67,10 @@
-         return jlong_zero;
+--- ../orig/jdk/src/share/native/java/util/zip/Inflater.c	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/java/util/zip/Inflater.c	2010-04-17 21:48:08.000000000 +0400
+@@ -65,6 +65,10 @@
+ 	return jlong_zero;
      } else {
-         char *msg;
+ 	char *msg;
 +// BSDXXX needed for FreeBSD 5.4 and below with system zlib
 +#if defined(__FreeBSD__) && __FreeBSD__ < 6
 +	strm->adler = 1;
 +#endif
-         switch (inflateInit2(strm, nowrap ? -MAX_WBITS : MAX_WBITS)) {
-           case Z_OK:
-             return ptr_to_jlong(strm);
-@@ -202,6 +206,10 @@
-     if (inflateReset(jlong_to_ptr(strm)) != Z_OK) {
-         JNU_ThrowInternalError(env, 0);
+ 	switch (inflateInit2(strm, nowrap ? -MAX_WBITS : MAX_WBITS)) {
+ 	  case Z_OK:
+ 	    return ptr_to_jlong(strm);
+@@ -197,6 +201,10 @@
+     if (inflateReset(jlong_to_ptr(addr)) != Z_OK) {
+ 	JNU_ThrowInternalError(env, 0);
      }
 +// BSDXXX needed for FreeBSD 5.4 and below with system zlib
 +#if defined(__FreeBSD__) && __FreeBSD__ < 6
@@ -9203,8 +8940,8 @@
  
  JNIEXPORT void JNICALL
 diff -uNr ../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-10-14 10:17:53.000000000 -0700
-+++ ./jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/java/util/zip/zlib-1.1.3/zconf.h	2010-04-17 21:48:08.000000000 +0400
 @@ -42,44 +42,49 @@
  /* for _LP64 */
  #include <sys/types.h>
@@ -9289,8 +9026,8 @@
  
  #if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32)
 diff -uNr ../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-10-14 10:17:53.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/debug/debug_util.h	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/debug/debug_util.h	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/debug/debug_util.h	2010-04-17 21:48:09.000000000 +0400
 @@ -50,7 +50,9 @@
  #include <stdio.h>
  #include <string.h>
@@ -9302,8 +9039,8 @@
  
  /* keep these after the other headers */
 diff -uNr ../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-10-14 10:17:53.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/image/BufImgSurfaceData.c	2010-04-17 21:48:09.000000000 +0400
 @@ -24,7 +24,11 @@
   */
  
@@ -9317,8 +9054,8 @@
  #include "sun_awt_image_BufImgSurfaceData.h"
  
 diff -uNr ../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-10-14 10:17:53.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/image/DataBufferNative.c	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/image/DataBufferNative.c	2010-04-15 11:35:45.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/image/DataBufferNative.c	2010-04-17 21:48:09.000000000 +0400
 @@ -23,7 +23,11 @@
   * have any questions.
   */
@@ -9332,8 +9069,8 @@
  #include "SurfaceData.h"
  #include "sun_awt_image_DataBufferNative.h"
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c	2010-04-17 21:48:09.000000000 +0400
 @@ -86,7 +86,7 @@
  #endif /* MLIB_USE_FTOI_CLAMPING */
  
@@ -9374,8 +9111,8 @@
  #endif /* _NO_LONGLONG */
  
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c	2009-10-28 20:01:49.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c	2010-04-17 21:48:09.000000000 +0400
 @@ -126,7 +126,7 @@
  #define D2I(x) CLAMP_S32((x) SAT_OFF)
  
@@ -9416,8 +9153,8 @@
  
  /***************************************************************/
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c	2010-04-17 21:48:09.000000000 +0400
 @@ -94,7 +94,7 @@
  #define D2I(x) CLAMP_S32((x) SAT_OFF)
  
@@ -9458,8 +9195,8 @@
  
  /***************************************************************/
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c	2010-04-17 21:48:09.000000000 +0400
 @@ -126,7 +126,7 @@
  #define D2I(x) CLAMP_S32((x) SAT_OFF)
  
@@ -9500,8 +9237,8 @@
  
  /***************************************************************/
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c	2010-04-17 21:48:09.000000000 +0400
 @@ -95,7 +95,7 @@
  #define D2I(x) CLAMP_S32((x) SAT_OFF)
  
@@ -9542,8 +9279,8 @@
  
  /***************************************************************/
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c	2010-04-17 21:48:09.000000000 +0400
 @@ -126,7 +126,7 @@
  #define D2I(x) CLAMP_S32((x) SAT_OFF)
  
@@ -9584,8 +9321,8 @@
  
  /***************************************************************/
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c	2010-04-17 21:48:09.000000000 +0400
 @@ -94,7 +94,7 @@
  #define D2I(x) CLAMP_S32((x) SAT_OFF)
  
@@ -9626,8 +9363,8 @@
  
  /***************************************************************/
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c	2010-04-17 21:48:09.000000000 +0400
 @@ -95,7 +95,7 @@
      dst = dp[0];
      if (ld_offset + size < 32) {
@@ -9848,8 +9585,8 @@
  
  #else  /* _LONGLONG */
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c	2010-04-17 21:48:09.000000000 +0400
 @@ -168,7 +168,7 @@
  }
  
@@ -10131,8 +9868,8 @@
        dp[13] = t1;
        dp[14] = t2;
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c	2010-04-17 21:48:09.000000000 +0400
 @@ -88,7 +88,7 @@
  } d64_2_f32;
  
@@ -10285,8 +10022,8 @@
    ((mlib_u32*)lh)[0] = l;  ((mlib_u32*)lh)[1] = l;
    ((mlib_u32*)lh)[2] = l;  ((mlib_u32*)lh)[3] = h;
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c	2010-04-17 21:48:09.000000000 +0400
 @@ -30,7 +30,7 @@
  typedef union {
    mlib_d64 db;
@@ -10297,8 +10034,8 @@
  #else
      mlib_s32 int0, int1;
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c	2010-04-17 21:48:09.000000000 +0400
 @@ -275,11 +275,11 @@
        for (i = 0; j <= (b_size - 4); j += 4, i++) {
          src0 = src1;
@@ -10398,8 +10135,8 @@
          dp += SIZE;
          sp += SIZE;
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c	2010-04-17 21:48:09.000000000 +0400
 @@ -120,7 +120,7 @@
    }                                                               \
  }
@@ -11633,8 +11370,8 @@
        dp[13] = t1;
        dp[14] = t2;
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_image.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_image.h	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_image.h	2010-04-17 21:48:09.000000000 +0400
 @@ -27,6 +27,11 @@
  #ifndef MLIB_IMAGE_H
  #define MLIB_IMAGE_H
@@ -11648,8 +11385,8 @@
  #include <mlib_status.h>
  #include <mlib_sys.h>
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_sys.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_sys.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_sys.c	2010-04-17 21:48:09.000000000 +0400
 @@ -26,9 +26,15 @@
  
  #include <stdlib.h>
@@ -11681,8 +11418,8 @@
  #endif /* _MSC_VER */
  }
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/awt/medialib/mlib_types.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/awt/medialib/mlib_types.h	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/awt/medialib/mlib_types.h	2010-04-17 21:48:09.000000000 +0400
 @@ -59,7 +59,10 @@
  
  #if defined(__SUNPRO_C) || defined(__SUNPRO_CC) || defined(__GNUC__)
@@ -11696,8 +11433,8 @@
  #include <malloc.h>                     /* for ptrdiff_t */
  #else
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/font/AccelGlyphCache.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/font/AccelGlyphCache.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/font/AccelGlyphCache.c	2010-04-17 21:48:09.000000000 +0400
 @@ -23,7 +23,11 @@
   * have any questions.
   */
@@ -11711,8 +11448,8 @@
  #include "AccelGlyphCache.h"
  #include "Trace.h"
 diff -uNr ../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-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/font/DrawGlyphList.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/font/DrawGlyphList.c	2010-04-15 11:35:46.000000000 +0400
++++ ./jdk/src/share/native/sun/font/DrawGlyphList.c	2010-04-17 21:48:09.000000000 +0400
 @@ -26,7 +26,11 @@
  #include "jlong.h"
  #include "math.h"
@@ -11725,21 +11462,9 @@
  #include "sunfontids.h"
  #include "fontscalerdefs.h"
  #include "glyphblitting.h"
-diff -uNr ../orig/jdk/src/share/native/sun/font/freetypeScaler.c ./jdk/src/share/native/sun/font/freetypeScaler.c
---- ../orig/jdk/src/share/native/sun/font/freetypeScaler.c	2009-10-14 10:17:54.000000000 -0700
-+++ ./jdk/src/share/native/sun/font/freetypeScaler.c	2009-11-02 17:27:40.000000000 -0800
-@@ -1291,7 +1291,7 @@
-                                    sunFontIDs.rect2DFloatClass,
-                                    sunFontIDs.rect2DFloatCtr4,
-                                    F26Dot6ToFloat(bbox.xMin),
--                                   F26Dot6ToFloat(bbox.yMax),
-+                                   F26Dot6ToFloat(-bbox.yMax),
-                                    F26Dot6ToFloat(bbox.xMax-bbox.xMin),
-                                    F26Dot6ToFloat(bbox.yMax-bbox.yMin));
-     }
 diff -uNr ../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-10-14 10:17:55.000000000 -0700
-+++ ./jdk/src/share/native/sun/font/sunFont.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/font/sunFont.c	2010-04-15 11:35:47.000000000 +0400
++++ ./jdk/src/share/native/sun/font/sunFont.c	2010-04-17 21:48:09.000000000 +0400
 @@ -24,7 +24,9 @@
   */
  
@@ -11751,8 +11476,8 @@
  #include "gdefs.h"
  #include "jlong.h"
 diff -uNr ../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-10-14 10:17:55.000000000 -0700
-+++ ./jdk/src/share/native/sun/java2d/SurfaceData.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/java2d/SurfaceData.c	2010-04-15 11:35:47.000000000 +0400
++++ ./jdk/src/share/native/sun/java2d/SurfaceData.c	2010-04-17 21:48:09.000000000 +0400
 @@ -28,7 +28,11 @@
  #include "jni_util.h"
  #include "Disposer.h"
@@ -11766,8 +11491,8 @@
  
  /**
 diff -uNr ../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-10-14 10:17:55.000000000 -0700
-+++ ./jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h	2010-04-15 11:35:47.000000000 +0400
++++ ./jdk/src/share/native/sun/java2d/opengl/OGLFuncs.h	2010-04-17 21:48:09.000000000 +0400
 @@ -26,6 +26,9 @@
  #ifndef OGLFuncs_h_Included
  #define OGLFuncs_h_Included
@@ -11779,8 +11504,8 @@
  #include "J2D_GL/gl.h"
  #include "J2D_GL/glext.h"
 diff -uNr ../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-10-14 10:17:55.000000000 -0700
-+++ ./jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c	2010-04-15 11:35:47.000000000 +0400
++++ ./jdk/src/share/native/sun/java2d/opengl/OGLRenderQueue.c	2010-04-17 21:48:09.000000000 +0400
 @@ -25,7 +25,11 @@
  
  #ifndef HEADLESS
@@ -11794,8 +11519,8 @@
  #include "sun_java2d_pipe_BufferedOpCodes.h"
  
 diff -uNr ../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-10-14 10:17:55.000000000 -0700
-+++ ./jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c	2010-04-15 11:35:47.000000000 +0400
++++ ./jdk/src/share/native/sun/java2d/opengl/OGLTextRenderer.c	2010-04-17 21:48:09.000000000 +0400
 @@ -25,7 +25,11 @@
  
  #ifndef HEADLESS
@@ -11809,8 +11534,8 @@
  #include <jlong.h>
  
 diff -uNr ../orig/jdk/src/share/transport/socket/socketTransport.c ./jdk/src/share/transport/socket/socketTransport.c
---- ../orig/jdk/src/share/transport/socket/socketTransport.c	2009-10-14 10:17:56.000000000 -0700
-+++ ./jdk/src/share/transport/socket/socketTransport.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/share/transport/socket/socketTransport.c	2010-04-15 11:35:48.000000000 +0400
++++ ./jdk/src/share/transport/socket/socketTransport.c	2010-04-17 21:48:09.000000000 +0400
 @@ -65,6 +65,9 @@
  #define HEADER_SIZE     11
  #define MAX_DATA_SIZE 1000
@@ -11821,25 +11546,25 @@
  /*
   * Record the last error for this thread.
   */
-@@ -153,7 +156,7 @@
+@@ -155,7 +158,7 @@
          }
          buf = b;
          buf += received;
--        n = dbgsysRecv(fd, buf, strlen(hello)-received, 0);
-+        n = recv_fully(fd, buf, strlen(hello)-received);
+-        n = dbgsysRecv(fd, buf, helloLen-received, 0);
++        n = recv_fully(fd, buf, helloLen-received);
          if (n == 0) {
              setLastError(0, "handshake failed - connection prematurally closed");
              return JDWPTRANSPORT_ERROR_IO_ERROR;
-@@ -179,7 +182,7 @@
-         }
+@@ -180,7 +183,7 @@
+         return JDWPTRANSPORT_ERROR_IO_ERROR;
      }
  
--    if (dbgsysSend(fd, hello, strlen(hello), 0) != (int)strlen(hello)) {
-+    if (send_fully(fd, hello, strlen(hello)) != (int)strlen(hello)) {
+-    if (dbgsysSend(fd, (char*)hello, helloLen, 0) != helloLen) {
++    if (send_fully(fd, hello,  helloLen) != helloLen) {
          RETURN_IO_ERROR("send failed during handshake");
      }
      return JDWPTRANSPORT_ERROR_NONE;
-@@ -554,19 +557,19 @@
+@@ -555,19 +558,19 @@
      /* Do one send for short packets, two for longer ones */
      if (data_len <= MAX_DATA_SIZE) {
          memcpy(header + HEADER_SIZE, data, data_len);
@@ -11863,7 +11588,7 @@
              RETURN_IO_ERROR("send failed");
          }
      }
-@@ -574,13 +577,33 @@
+@@ -575,13 +578,33 @@
      return JDWPTRANSPORT_ERROR_NONE;
  }
  
@@ -11899,8 +11624,8 @@
          } else if (res == 0) {
              break; /* eof, return nbytes which is less than len */
 diff -uNr ../orig/jdk/src/solaris/back/exec_md.c ./jdk/src/solaris/back/exec_md.c
---- ../orig/jdk/src/solaris/back/exec_md.c	2009-10-14 10:17:56.000000000 -0700
-+++ ./jdk/src/solaris/back/exec_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/back/exec_md.c	2010-04-15 11:35:48.000000000 +0400
++++ ./jdk/src/solaris/back/exec_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -30,7 +30,7 @@
  #include "sys.h"
  #include "util.h"
@@ -11911,8 +11636,8 @@
    #define FORK() fork()
  #else
 diff -uNr ../orig/jdk/src/solaris/back/linker_md.c ./jdk/src/solaris/back/linker_md.c
---- ../orig/jdk/src/solaris/back/linker_md.c	2009-10-14 10:17:56.000000000 -0700
-+++ ./jdk/src/solaris/back/linker_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/back/linker_md.c	2010-04-15 11:35:48.000000000 +0400
++++ ./jdk/src/solaris/back/linker_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -48,6 +48,12 @@
  #include "threads_md.h"
  #endif
@@ -11939,9 +11664,18 @@
  }
  
 diff -uNr ../orig/jdk/src/solaris/back/util_md.h ./jdk/src/solaris/back/util_md.h
---- ../orig/jdk/src/solaris/back/util_md.h	2009-10-14 10:17:56.000000000 -0700
-+++ ./jdk/src/solaris/back/util_md.h	2009-10-28 20:01:48.000000000 -0700
-@@ -28,6 +28,7 @@
+--- ../orig/jdk/src/solaris/back/util_md.h	2010-04-15 11:35:48.000000000 +0400
++++ ./jdk/src/solaris/back/util_md.h	2010-04-17 21:48:09.000000000 +0400
+@@ -29,7 +29,7 @@
+ #include <stddef.h>
+ 
+ /* To get uintptr_t */
+-#ifdef LINUX
++#if defined(LINUX) || defined(_ALLBSD_SOURCE)
+ #include <stdint.h>
+ #else
+ /* The file stdint.h is not on Solaris 8 machines. */
+@@ -40,6 +40,7 @@
  
  #include <limits.h>
  #include <sys/types.h>
@@ -11949,7 +11683,7 @@
  
  #ifdef _LP64
  typedef unsigned long UNSIGNED_JLONG;
-@@ -43,7 +44,7 @@
+@@ -55,7 +56,7 @@
  
  /* On little endian machines, convert java big endian numbers. */
  
@@ -11959,8 +11693,8 @@
  #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 -uNr ../orig/jdk/src/solaris/bin/java_md.c ./jdk/src/solaris/bin/java_md.c
---- ../orig/jdk/src/solaris/bin/java_md.c	2009-10-14 10:17:56.000000000 -0700
-+++ ./jdk/src/solaris/bin/java_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/bin/java_md.c	2010-04-15 11:35:48.000000000 +0400
++++ ./jdk/src/solaris/bin/java_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -24,6 +24,7 @@
   */
  
@@ -12176,8 +11910,8 @@
  #define MAX_PID_STR_SZ   20
  
 diff -uNr ../orig/jdk/src/solaris/bin/java_md.h ./jdk/src/solaris/bin/java_md.h
---- ../orig/jdk/src/solaris/bin/java_md.h	2009-10-14 10:17:56.000000000 -0700
-+++ ./jdk/src/solaris/bin/java_md.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/bin/java_md.h	2010-04-15 11:35:48.000000000 +0400
++++ ./jdk/src/solaris/bin/java_md.h	2010-04-17 21:48:09.000000000 +0400
 @@ -58,10 +58,14 @@
  #include <sys/time.h>
  #define CounterGet()              (gethrtime()/1000)
@@ -12195,8 +11929,8 @@
  /*
   * Function prototypes.
 diff -uNr ../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-10-14 10:17:57.000000000 -0700
-+++ ./jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java	2010-04-15 11:35:48.000000000 +0400
++++ ./jdk/src/solaris/classes/sun/awt/X11GraphicsEnvironment.java	2010-04-17 21:48:09.000000000 +0400
 @@ -403,7 +403,7 @@
          if (fontID != null) {
              fileName = (String)fontNameMap.get(fontID);
@@ -12216,8 +11950,8 @@
          }
          fontdirs = (String[])fontConfigDirs.toArray(new String[0]);
 diff -uNr ../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-10-14 10:17:57.000000000 -0700
-+++ ./jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java	2010-04-17 21:48:09.000000000 +0400
 @@ -119,7 +119,11 @@
      }
  
@@ -12232,8 +11966,8 @@
  
      static final int UNINITIALIZED = -1;
 diff -uNr ../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-10-22 23:07:25.000000000 -0700
-+++ ./jdk/src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java	2010-04-17 21:43:55.000000000 +0400
++++ ./jdk/src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java	2010-04-17 21:48:09.000000000 +0400
 @@ -38,9 +38,6 @@
   */
  public class BsdVirtualMachine extends HotSpotVirtualMachine {
@@ -12338,8 +12072,8 @@
      }
  }
 diff -uNr ../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-10-14 10:17:57.000000000 -0700
-+++ ./jdk/src/solaris/demo/jvmti/hprof/hprof_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/demo/jvmti/hprof/hprof_md.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/demo/jvmti/hprof/hprof_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -33,7 +33,7 @@
  #include <sys/stat.h>
  #include <fcntl.h>
@@ -12386,8 +12120,8 @@
  #else
      /* Just using &Agent_OnLoad will get the first external symbol with
 diff -uNr ../orig/jdk/src/solaris/hpi/include/interrupt.h ./jdk/src/solaris/hpi/include/interrupt.h
---- ../orig/jdk/src/solaris/hpi/include/interrupt.h	2009-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/include/interrupt.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/include/interrupt.h	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/include/interrupt.h	2010-04-17 21:48:09.000000000 +0400
 @@ -75,7 +75,7 @@
   *      N_INTERRUPTS  - The number of interrupt channels.  These
   *                      are numbered from 0 to (N_INTERRUPTS - 1).
@@ -12409,8 +12143,8 @@
  /* Thread implementation dependent interrupt dispatcher. */
  void intrDispatchMD(int sig, siginfo_t *info, void *uc);
 diff -uNr ../orig/jdk/src/solaris/hpi/include/largefile.h ./jdk/src/solaris/hpi/include/largefile.h
---- ../orig/jdk/src/solaris/hpi/include/largefile.h	2009-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/include/largefile.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/include/largefile.h	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/include/largefile.h	2010-04-17 21:48:09.000000000 +0400
 @@ -34,6 +34,10 @@
  #include "largefile_linux.h"
  #endif
@@ -12423,8 +12157,8 @@
   * Prototypes for wrappers that we define.  These wrapper functions
   * are low-level I/O routines that will use 64 bit versions if
 diff -uNr ../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-10-22 23:07:25.000000000 -0700
-+++ ./jdk/src/solaris/hpi/include/largefile_bsd.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/include/largefile_bsd.h	2010-04-17 21:43:55.000000000 +0400
++++ ./jdk/src/solaris/hpi/include/largefile_bsd.h	2010-04-17 21:48:09.000000000 +0400
 @@ -23,14 +23,28 @@
   * have any questions.
   */
@@ -12462,8 +12196,8 @@
 +
 +#endif /* _JAVASOFT_BSD_LARGEFILE_SUPPORT_H_ */
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/native_threads/include/threads_md.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/native_threads/include/threads_md.h	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/native_threads/include/threads_md.h	2010-04-17 21:48:09.000000000 +0400
 @@ -36,6 +36,8 @@
  #define N_TRACED_REGS 12
  #elif i386
@@ -12511,8 +12245,8 @@
  #ifdef __linux__
  extern thread_key_t intrJmpbufkey;
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/native_threads/src/condvar_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/native_threads/src/condvar_md.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/native_threads/src/condvar_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -58,7 +58,7 @@
  {
      int err;
@@ -12523,8 +12257,8 @@
  #else
      err = cond_destroy((cond_t *) condvar);
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/native_threads/src/monitor_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/native_threads/src/monitor_md.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/native_threads/src/monitor_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -147,7 +147,7 @@
          mid->monitor_owner = self;
          mid->entry_count = 1;
@@ -12535,8 +12269,8 @@
              mid->entry_count++;
              return SYS_OK;
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/native_threads/src/sys_api_td.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/native_threads/src/sys_api_td.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/native_threads/src/sys_api_td.c	2010-04-17 21:48:09.000000000 +0400
 @@ -39,6 +39,10 @@
  #include <sys/ioctl.h>
  #endif
@@ -12560,8 +12294,8 @@
  #undef CLOSEIO
  #else
 diff -uNr ../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-10-22 23:07:25.000000000 -0700
-+++ ./jdk/src/solaris/hpi/native_threads/src/threads_bsd.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/native_threads/src/threads_bsd.c	2010-04-17 21:43:55.000000000 +0400
++++ ./jdk/src/solaris/hpi/native_threads/src/threads_bsd.c	2010-04-17 21:48:09.000000000 +0400
 @@ -23,79 +23,44 @@
   * have any questions.
   */
@@ -13438,8 +13172,8 @@
 -    print_lwps();
  }
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/native_threads/src/threads_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/native_threads/src/threads_md.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/native_threads/src/threads_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -54,6 +54,10 @@
  #error That can NOT possibly be right.
  #endif
@@ -13522,8 +13256,8 @@
          info.isMP = (cpus < 0) ? 1 : (cpus > 1);
          info.name = "native threads";
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/src/linker_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/src/linker_md.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/src/linker_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -44,11 +44,19 @@
  #include "threads_md.h"
  #endif
@@ -13591,8 +13325,8 @@
      /*
       * This is a bit of bulletproofing to catch the commonly occurring
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/src/memory_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/src/memory_md.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/src/memory_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -50,12 +50,24 @@
  #include <stdlib.h>
  #include <stdio.h>      /* For perror() */
@@ -13683,8 +13417,8 @@
  #else
      ret = requestedAddr;
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/hpi/src/system_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/hpi/src/system_md.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/hpi/src/system_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -41,6 +41,7 @@
  #include <dlfcn.h>
  
@@ -13739,8 +13473,8 @@
      if (delete != 0) {
          unlink(path);
 diff -uNr ../orig/jdk/src/solaris/instrument/EncodingSupport_md.c ./jdk/src/solaris/instrument/EncodingSupport_md.c
---- ../orig/jdk/src/solaris/instrument/EncodingSupport_md.c	2009-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/instrument/EncodingSupport_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/instrument/EncodingSupport_md.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/instrument/EncodingSupport_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -28,7 +28,10 @@
  #include <string.h>
  #include <ctype.h>
@@ -13771,8 +13505,8 @@
      /* Open conversion descriptors */
      iconvToPlatform   = iconv_open(codeset, "UTF-8");
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/javavm/export/jvm_md.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/javavm/export/jvm_md.h	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/javavm/export/jvm_md.h	2010-04-17 21:48:09.000000000 +0400
 @@ -39,7 +39,14 @@
  #define JNI_ONUNLOAD_SYMBOLS {"JNI_OnUnload"}
  
@@ -13798,8 +13532,8 @@
  /* Signals */
  
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c	2010-04-15 11:35:49.000000000 +0400
++++ ./jdk/src/solaris/native/com/sun/management/UnixOperatingSystem_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -32,10 +32,16 @@
  
  #include <sys/types.h>
@@ -13963,8 +13697,8 @@
  
  JNIEXPORT jlong JNICALL
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/io/UnixFileSystem_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/io/UnixFileSystem_md.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/io/UnixFileSystem_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -41,6 +41,11 @@
  #include "java_io_FileSystem.h"
  #include "java_io_UnixFileSystem.h"
@@ -14021,8 +13755,8 @@
  
          if (stat(path, &sb) == 0) {
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/io/canonicalize_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/io/canonicalize_md.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/io/canonicalize_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -33,7 +33,9 @@
  #include <sys/stat.h>
  #include <errno.h>
@@ -14034,8 +13768,8 @@
  
  /* Note: The comments in this file use the terminology
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/io/io_util_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/io/io_util_md.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/io/io_util_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -36,7 +36,7 @@
      WITH_PLATFORM_STRING(env, path, ps) {
          FD fd;
@@ -14046,8 +13780,8 @@
          char *p = (char *)ps + strlen(ps) - 1;
          while ((p > ps) && (*p == '/'))
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -28,6 +28,11 @@
  #include "jni.h"
  #include "jni_util.h"
@@ -14089,8 +13823,8 @@
              const char * valBeg = varEnd + 1;
              jsize varLength = varEnd - environ[i];
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/lang/UNIXProcess_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/lang/UNIXProcess_md.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/lang/UNIXProcess_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -40,7 +40,11 @@
  #include <stdlib.h>
  #include <sys/types.h>
@@ -14294,8 +14028,8 @@
             Give the child sides of the pipes the right fileno's.
             Closing pipe fds here is redundant, since closeDescriptors()
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/lang/java_props_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/lang/java_props_md.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/lang/java_props_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -23,7 +23,7 @@
   * have any questions.
   */
@@ -14430,8 +14164,8 @@
      return &sprops;
  }
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/net/Inet4AddressImpl.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/net/Inet4AddressImpl.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/net/Inet4AddressImpl.c	2010-04-17 21:48:09.000000000 +0400
 @@ -35,17 +35,293 @@
  #include <stdlib.h>
  #include <ctype.h>
@@ -14789,8 +14523,8 @@
          int flags = fcntl(fd, F_GETFL); \
          flags |= O_NONBLOCK;            \
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/net/Inet6AddressImpl.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/net/Inet6AddressImpl.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/net/Inet6AddressImpl.c	2010-04-17 21:48:09.000000000 +0400
 @@ -32,6 +32,9 @@
  #include <strings.h>
  #include <stdlib.h>
@@ -14841,8 +14575,8 @@
      return (*env)->NewStringUTF(env, hostname);
  }
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/net/NetworkInterface.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/net/NetworkInterface.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/net/NetworkInterface.c	2010-04-17 21:48:09.000000000 +0400
 @@ -23,13 +23,13 @@
   * have any questions.
   */
@@ -15120,8 +14854,8 @@
      strcpy(if2.ifr_name, name_utf);
  
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c	2010-04-17 21:48:09.000000000 +0400
 @@ -23,12 +23,12 @@
   * have any questions.
   */
@@ -15229,8 +14963,8 @@
              }
          }
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/net/PlainSocketImpl.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/net/PlainSocketImpl.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/net/PlainSocketImpl.c	2010-04-17 21:48:09.000000000 +0400
 @@ -528,9 +528,11 @@
          if (connect_rv == JVM_IO_INTR) {
              JNU_ThrowByName(env, JNU_JAVAIOPKG "InterruptedIOException",
@@ -15244,8 +14978,8 @@
              NET_ThrowByNameWithLastError(env, JNU_JAVANETPKG "ConnectException",
                             "Connection refused");
 diff -uNr ../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-10-22 23:07:25.000000000 -0700
-+++ ./jdk/src/solaris/native/java/net/bsd_close.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/net/bsd_close.c	2010-04-17 21:43:55.000000000 +0400
++++ ./jdk/src/solaris/native/java/net/bsd_close.c	2010-04-17 21:48:09.000000000 +0400
 @@ -57,7 +57,7 @@
  /*
   * Signal to unblock thread
@@ -15256,8 +14990,8 @@
  /*
   * The fd table and the number of file descriptors
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/net/net_util_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/net/net_util_md.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/net/net_util_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -34,6 +34,15 @@
  #include <stdlib.h>
  #include <dlfcn.h>
@@ -15429,8 +15163,8 @@
  }
  
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/net/net_util_md.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/net/net_util_md.h	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/net/net_util_md.h	2010-04-17 21:48:09.000000000 +0400
 @@ -37,7 +37,7 @@
  #endif
  
@@ -15441,8 +15175,8 @@
  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 -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/nio/MappedByteBuffer.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/nio/MappedByteBuffer.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/nio/MappedByteBuffer.c	2010-04-17 21:48:09.000000000 +0400
 @@ -38,7 +38,11 @@
                                          jlong address, jlong len)
  {
@@ -15468,8 +15202,8 @@
  
      jlong offset = lAddress % pageSize;
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/util/FileSystemPreferences.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/util/FileSystemPreferences.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/util/FileSystemPreferences.c	2010-04-17 21:48:09.000000000 +0400
 @@ -47,8 +47,11 @@
      return (jint) result;
  }
@@ -15508,8 +15242,8 @@
      if (rc < 0) {
          close(fd);
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/java/util/TimeZone_md.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/java/util/TimeZone_md.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/java/util/TimeZone_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -31,7 +31,7 @@
  #include <errno.h>
  #include <stddef.h>
@@ -15519,24 +15253,16 @@
  #include <string.h>
  #include <dirent.h>
  #include <sys/stat.h>
-@@ -49,11 +49,14 @@
+@@ -49,7 +49,7 @@
  #define fileclose       fclose
  #endif
  
 -#ifdef __linux__
-+#if defined(__linux__) || defined(_ALLBSD_SOURCE)
- 
-+#ifdef __linux__
- static const char *sysconfig_clock_file = "/etc/sysconfig/clock";
-+#endif
-+
- static const char *zoneinfo_dir = "/usr/share/zoneinfo";
--static const char *defailt_zoneinfo_file = "/etc/localtime";
-+static const char *default_zoneinfo_file = "/etc/localtime";
++#if defined(__linux__)  || defined(_ALLBSD_SOURCE)
  
- /*
-  * Returns a point to the zone ID portion of the given zoneinfo file
-@@ -199,7 +202,9 @@
+ static const char *ETC_TIMEZONE_FILE = "/etc/timezone";
+ static const char *ZONEINFO_DIR = "/usr/share/zoneinfo";
+@@ -199,7 +199,9 @@
      int fd;
      char *buf;
      size_t size;
@@ -15544,9 +15270,9 @@
  
 +#ifdef __linux__
      /*
-      * First, try the ZONE entry in /etc/sysconfig/clock. However, the
-      * ZONE entry is not set up after initial Red Hat Linux
-@@ -254,14 +259,18 @@
+      * Try reading the /etc/timezone file for Debian distros. There's
+      * no spec of the file format available. This parsing assumes that
+@@ -223,6 +225,7 @@
              return tz;
          }
      }
@@ -15554,43 +15280,40 @@
  
      /*
       * Next, try /etc/localtime to find the zone ID.
-      */
--    if (lstat(defailt_zoneinfo_file, &statbuf) == -1) {
-+    if (lstat(default_zoneinfo_file, &statbuf) == -1) {
+@@ -231,6 +234,9 @@
          return NULL;
      }
  
-+    strlcpy(zoneinfo_file, default_zoneinfo_file, PATH_MAX+1);
++    strlcpy(zoneinfo_file, DEFAULT_ZONEINFO_FILE, PATH_MAX+1);
 +
 +#if defined(__linux__) || defined(_ALLBSD_SOURCE)
      /*
       * If it's a symlink, get the link name and its zone ID part. (The
       * older versions of timeconfig created a symlink as described in
-@@ -270,21 +279,25 @@
+@@ -239,21 +245,25 @@
       * from /etc/localtime.)
       */
      if (S_ISLNK(statbuf.st_mode)) {
 -        char linkbuf[PATH_MAX+1];
          int len;
  
--        if ((len = readlink(defailt_zoneinfo_file, linkbuf, sizeof(linkbuf)-1)) == -1) {
-+	if ((len = readlink(default_zoneinfo_file, zoneinfo_file, sizeof(zoneinfo_file)-1)) == -1) {
+-        if ((len = readlink(DEFAULT_ZONEINFO_FILE, linkbuf, sizeof(linkbuf)-1)) == -1) {
++        if ((len = readlink(DEFAULT_ZONEINFO_FILE, zoneinfo_file, sizeof(zoneinfo_file)-1)) == -1) {
              jio_fprintf(stderr, (const char *) "can't get a symlink of %s\n",
--                        defailt_zoneinfo_file);
-+                        default_zoneinfo_file);
+                         DEFAULT_ZONEINFO_FILE);
              return NULL;
          }
 -        linkbuf[len] = '\0';
 -        tz = getZoneName(linkbuf);
-+	zoneinfo_file[len] = '\0';
-+	tz = getZoneName(zoneinfo_file);
++        zoneinfo_file[len] = '\0';
++        tz = getZoneName(zoneinfo_file);
          if (tz != NULL) {
              tz = strdup(tz);
-+	    return tz;
-+	} else {
-+	    if (lstat(zoneinfo_file, &statbuf) == -1) {
-+		return NULL;
-+	    }
++            return tz;
++        } else {
++            if (lstat(zoneinfo_file, &statbuf) == -1) {
++                retuen NULL;
++            }
          }
 -        return tz;
      }
@@ -15598,16 +15321,16 @@
  
      /*
       * If it's a regular file, we need to find out the same zoneinfo file
-@@ -295,7 +308,7 @@
+@@ -264,7 +274,7 @@
      if (buf == NULL) {
          return NULL;
      }
--    if ((fd = open(defailt_zoneinfo_file, O_RDONLY)) == -1) {
+-    if ((fd = open(DEFAULT_ZONEINFO_FILE, O_RDONLY)) == -1) {
 +    if ((fd = open(zoneinfo_file, O_RDONLY)) == -1) {
          free((void *) buf);
          return NULL;
      }
-@@ -524,7 +537,7 @@
+@@ -493,7 +503,7 @@
  
      tz = getenv("TZ");
  
@@ -15616,7 +15339,7 @@
      if (tz == NULL) {
  #else
  #ifdef __solaris__
-@@ -563,19 +576,32 @@
+@@ -532,19 +542,32 @@
  {
      time_t offset;
      char sign, buf[16];
@@ -15654,8 +15377,8 @@
              sign, (int)(offset/3600), (int)((offset%3600)/60));
      return strdup(buf);
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/CUPSfuncs.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/CUPSfuncs.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/CUPSfuncs.c	2010-04-17 21:48:09.000000000 +0400
 @@ -25,6 +25,7 @@
  
  #include <jni.h>
@@ -15679,8 +15402,8 @@
        return JNI_FALSE;
      }
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/VDrawingArea.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/VDrawingArea.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/VDrawingArea.c	2010-04-17 21:48:09.000000000 +0400
 @@ -31,7 +31,11 @@
  #endif /* !HEADLESS */
  
@@ -15694,8 +15417,8 @@
  #ifdef __linux__
  /* XXX: Shouldn't be necessary. */
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/X11Color.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/X11Color.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/X11Color.c	2010-04-17 21:48:09.000000000 +0400
 @@ -33,7 +33,9 @@
  #include <math.h>
  #include <sys/time.h>
@@ -15707,8 +15430,8 @@
  #include <X11/Xlib.h>
  #include <X11/Xatom.h>
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/XDrawingArea.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/XDrawingArea.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/XDrawingArea.c	2010-04-17 21:48:09.000000000 +0400
 @@ -30,7 +30,11 @@
  #include <Xm/XmP.h>
  
@@ -15722,8 +15445,8 @@
  #ifdef DEBUG
  #include <jvm.h>  /* To get jio_fprintf() */
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_Font.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_Font.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_Font.c	2010-04-17 21:48:09.000000000 +0400
 @@ -334,7 +334,7 @@
              if (strcmp(style, "regular") == 0) {
                  altstyle = "roman";
@@ -15734,8 +15457,8 @@
                  family = "lucida";
              }
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c	2010-04-17 21:48:09.000000000 +0400
 @@ -40,6 +40,7 @@
  #include <jni.h>
  #include <jni_util.h>
@@ -15861,8 +15584,8 @@
          J2dRlsTraceLn(J2D_TRACE_ERROR,
                        "X11GD_InitXrandrFuncs: Could not open libXrandr.so.2");
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_InputMethod.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_InputMethod.c	2010-04-17 21:48:09.000000000 +0400
 @@ -69,7 +69,7 @@
                                  XIMPreeditDrawCallbackStruct *);
  static void PreeditCaretCallback(XIC, XPointer,
@@ -16103,8 +15826,8 @@
      adjustStatusWindow(window);
      AWT_UNLOCK();
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_LoadLibrary.c	2010-04-17 21:48:09.000000000 +0400
 @@ -260,7 +260,11 @@
          }
      }
@@ -16118,8 +15841,8 @@
      JNU_CallStaticMethodByName(env, NULL, "java/lang/System", "load",
                                 "(Ljava/lang/String;)V",
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_MToolkit.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_MToolkit.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_MToolkit.c	2010-04-17 21:48:09.000000000 +0400
 @@ -63,8 +63,9 @@
  extern JavaVM *jvm;
  
@@ -16141,8 +15864,8 @@
  #endif
                xembed_eventHandler(&xev);
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_Mlib.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_Mlib.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_Mlib.c	2010-04-17 21:48:09.000000000 +0400
 @@ -32,6 +32,7 @@
  #include <dlfcn.h>
  #include "jni.h"
@@ -16166,8 +15889,8 @@
  
      if (handle == NULL) {
 diff -uNr ../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-10-14 10:17:58.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_Robot.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_Robot.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_Robot.c	2010-04-17 21:48:09.000000000 +0400
 @@ -45,7 +45,7 @@
  #include "wsutils.h"
  #include "list.h"
@@ -16178,8 +15901,8 @@
  #endif
  
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_util.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_util.h	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_util.h	2010-04-17 21:48:09.000000000 +0400
 @@ -187,15 +187,20 @@
  #ifdef __solaris__
  extern Widget awt_util_getXICStatusAreaWindow(Widget w);
@@ -16203,8 +15926,8 @@
    Cardinal      num_refs;       /* Number of referencing widgets. */
    Cardinal      max_refs;       /* Maximum length of refs array. */
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_wm.c	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_wm.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_wm.c	2010-04-17 21:48:09.000000000 +0400
 @@ -121,12 +121,19 @@
  static Atom XA_KWM_WIN_MAXIMIZED;
  
@@ -16303,8 +16026,8 @@
      }
      else {
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/awt_wm.h	2009-10-28 20:01:48.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/awt_wm.h	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/awt_wm.h	2010-04-17 21:48:09.000000000 +0400
 @@ -45,7 +45,10 @@
      KDE2_WM,
      SAWFISH_WM,
@@ -16318,8 +16041,8 @@
  
  extern void awt_wm_init(void);
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/extutil.h	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/extutil.h	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/extutil.h	2010-04-17 21:48:09.000000000 +0400
 @@ -58,7 +58,7 @@
   */
  /* $XFree86: xc/include/extensions/extutil.h,v 1.5 2001/01/17 17:53:20 dawes Exp $ */
@@ -16336,8 +16059,8 @@
 -#endif /* __linux__ */
 +#endif /* __linux__ || _ALLBSD_SOURCE */
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/fontpath.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/fontpath.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/fontpath.c	2010-04-17 21:48:09.000000000 +0400
 @@ -23,7 +23,7 @@
   * have any questions.
   */
@@ -16496,8 +16219,8 @@
              return NULL;
          }
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/gtk2_interface.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/gtk2_interface.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/gtk2_interface.c	2010-04-17 21:48:09.000000000 +0400
 @@ -30,8 +30,9 @@
  #include <string.h>
  #include "gtk2_interface.h"
@@ -16510,8 +16233,8 @@
  #define G_TYPE_INVALID                  G_TYPE_MAKE_FUNDAMENTAL (0)
  #define G_TYPE_NONE                     G_TYPE_MAKE_FUNDAMENTAL (1)
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/list.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/list.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/list.c	2010-04-17 21:48:09.000000000 +0400
 @@ -66,7 +66,11 @@
    ----------------------------------------------------------------------- **/
  
@@ -16525,8 +16248,8 @@
  
  
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/awt/robot_common.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/awt/robot_common.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/awt/robot_common.c	2010-04-17 21:48:09.000000000 +0400
 @@ -27,6 +27,9 @@
      #error This file should not be included in headless library
  #endif
@@ -16538,8 +16261,8 @@
  
  /*
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/font/X11FontScaler.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/font/X11FontScaler.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/font/X11FontScaler.c	2010-04-17 21:48:09.000000000 +0400
 @@ -32,7 +32,11 @@
   * into X11FontScaler_md.c, which is compiled into another library.
   */
@@ -16553,8 +16276,8 @@
  #include <sys/utsname.h>
  
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/font/X11TextRenderer.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/font/X11TextRenderer.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/font/X11TextRenderer.c	2010-04-17 21:48:09.000000000 +0400
 @@ -39,7 +39,11 @@
  #include "GraphicsPrimitiveMgr.h"
  #include "glyphblitting.h"
@@ -16568,8 +16291,8 @@
  
  JNIEXPORT void JNICALL AWTDrawGlyphList
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/java2d/j2d_md.h	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/java2d/j2d_md.h	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/java2d/j2d_md.h	2010-04-17 21:48:09.000000000 +0400
 @@ -28,11 +28,11 @@
  #include <sys/types.h>
  
@@ -16586,8 +16309,8 @@
  typedef unsigned char   jubyte;
  typedef unsigned short  jushort;
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c	2010-04-15 11:35:50.000000000 +0400
++++ ./jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c	2010-04-17 21:48:09.000000000 +0400
 @@ -66,6 +66,10 @@
   *    MLIB_EDGE_SRC_PADDED
   */
@@ -16694,8 +16417,8 @@
        }
        else {                                               /* aligned */
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c	2010-04-17 21:48:09.000000000 +0400
 @@ -794,7 +794,7 @@
  static int initialized;
  static int usevis = JNI_TRUE;
@@ -16706,8 +16429,8 @@
  #else
  #   define ULTRA_CHIP   "sun4u"
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h	2010-04-17 21:48:09.000000000 +0400
 @@ -27,7 +27,10 @@
  #define OGLFuncs_md_h_Included
  
@@ -16729,8 +16452,8 @@
          OGL_LIB_HANDLE = dlopen(libGLPath, RTLD_LAZY | RTLD_LOCAL); \
      } \
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/java2d/x11/X11SurfaceData.c	2010-04-17 21:48:09.000000000 +0400
 @@ -32,6 +32,7 @@
  #include "gdefs.h"
  
@@ -16749,8 +16472,8 @@
      dgaAvailable = JNI_FALSE;
      if (lib != NULL) {
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/jdga/dgalock.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/jdga/dgalock.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/jdga/dgalock.c	2010-04-17 21:48:09.000000000 +0400
 @@ -44,6 +44,7 @@
  #include <X11/Xlib.h>
  
@@ -16774,8 +16497,8 @@
              IsXineramaOn = (IsXineramaOnFunc *)sym;
              if (IsXineramaOn != 0 && (*IsXineramaOn)(display)) {
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/management/FileSystemImpl.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/management/FileSystemImpl.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/management/FileSystemImpl.c	2010-04-17 21:48:09.000000000 +0400
 @@ -26,6 +26,10 @@
  #include <sys/types.h>
  #include <sys/stat.h>
@@ -16788,8 +16511,8 @@
  #include "jni_util.h"
  #include "sun_management_FileSystemImpl.h"
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/net/dns/ResolverConfigurationImpl.c	2010-04-17 21:48:09.000000000 +0400
 @@ -33,7 +33,7 @@
  #include <strings.h>
  #endif
@@ -16800,8 +16523,8 @@
  #endif
  
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c	2010-04-17 21:48:09.000000000 +0400
 @@ -26,11 +26,12 @@
  #include "jni.h"
  #include "jni_util.h"
@@ -16829,8 +16552,8 @@
    }
    if (gconf_ver > 0) {
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/nio/ch/DatagramChannelImpl.c	2010-04-17 21:48:09.000000000 +0400
 @@ -35,7 +35,7 @@
  #include <string.h>
  #include <errno.h>
@@ -16881,8 +16604,8 @@
  #endif
  
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c	2010-04-17 21:48:09.000000000 +0400
 @@ -26,15 +26,21 @@
  #include "jni.h"
  #include "jni_util.h"
@@ -17010,8 +16733,8 @@
          JNU_ThrowIOExceptionWithLastError(env, "Release failed");
      }
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/nio/ch/FileDispatcher.c	2010-04-17 21:48:09.000000000 +0400
 @@ -32,8 +32,12 @@
  #include <sys/socket.h>
  #include <fcntl.h>
@@ -17026,8 +16749,8 @@
  static int preCloseFD = -1;     /* File descriptor to which we dup other fd's
                                     before closing them for real */
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/nio/ch/FileKey.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/nio/ch/FileKey.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/nio/ch/FileKey.c	2010-04-17 21:48:09.000000000 +0400
 @@ -30,6 +30,10 @@
  #include "nio_util.h"
  #include "sun_nio_ch_FileKey.h"
@@ -17040,8 +16763,8 @@
  static jfieldID key_st_ino;    /* id for FileKey.st_ino */
  
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/nio/ch/Net.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/nio/ch/Net.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/nio/ch/Net.c	2010-04-17 21:48:09.000000000 +0400
 @@ -140,8 +140,31 @@
      SOCKADDR sa;
      int sa_len = SOCKADDR_LEN;
@@ -17184,8 +16907,8 @@
              xn = JNU_JAVANETPKG "ConnectException";
              break;
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/security/jgss/wrapper/NativeFunc.c	2010-04-17 21:48:09.000000000 +0400
 @@ -26,7 +26,9 @@
  #include <stdio.h>
  #include <stdlib.h>
@@ -17197,8 +16920,8 @@
  
  /* standard GSS method names (ordering is from mapfile) */
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -28,12 +28,19 @@
  #include <string.h>
  
@@ -17242,8 +16965,8 @@
      dprintf2("-handle: %u (0X%X)\n", hModule, hModule);
  
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -64,7 +64,9 @@
  #include <assert.h>
  
@@ -17255,8 +16978,8 @@
  #include <jni.h>
  
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/security/smartcardio/pcsc_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -29,7 +29,9 @@
  #include <assert.h>
  
@@ -17268,8 +16991,8 @@
  #include <winscard.h>
  
 diff -uNr ../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-10-22 23:07:25.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c	2010-04-17 21:43:55.000000000 +0400
++++ ./jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c	2010-04-17 21:48:09.000000000 +0400
 @@ -35,10 +35,10 @@
  #include <dirent.h>
  #include <ctype.h>
@@ -17575,8 +17298,8 @@
 +    }
 +}
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/xawt/XWindow.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/xawt/XWindow.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/xawt/XWindow.c	2010-04-17 21:48:09.000000000 +0400
 @@ -228,10 +228,10 @@
      {java_awt_event_KeyEvent_VK_DOWN, XK_Down, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_STANDARD},
  
@@ -17602,8 +17325,8 @@
       * not to echo on JTextField when the NumLock is on. The
       * keysyms will be 0, because the last parameter 2 is not defined.
 diff -uNr ../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-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/native/sun/xawt/awt_Desktop.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/native/sun/xawt/awt_Desktop.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/native/sun/xawt/awt_Desktop.c	2010-04-17 21:48:09.000000000 +0400
 @@ -24,6 +24,7 @@
   */
  
@@ -17631,8 +17354,8 @@
  #ifdef INTERNAL_BUILD
          fprintf(stderr, "can not load libgnome-2.so\n");
 diff -uNr ../orig/jdk/src/solaris/npt/npt_md.h ./jdk/src/solaris/npt/npt_md.h
---- ../orig/jdk/src/solaris/npt/npt_md.h	2009-10-14 10:17:59.000000000 -0700
-+++ ./jdk/src/solaris/npt/npt_md.h	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/npt/npt_md.h	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/npt/npt_md.h	2010-04-17 21:48:09.000000000 +0400
 @@ -32,9 +32,10 @@
  #include <string.h>
  #include <errno.h>
@@ -17656,8 +17379,8 @@
          _sym = dlsym(_handle, "nptInitialize");                         \
          if ( _sym == NULL ) NPT_ERROR("Cannot find nptInitialize");     \
 diff -uNr ../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-10-14 10:18:00.000000000 -0700
-+++ ./jdk/src/solaris/transport/socket/socket_md.c	2009-10-28 20:01:47.000000000 -0700
+--- ../orig/jdk/src/solaris/transport/socket/socket_md.c	2010-04-15 11:35:51.000000000 +0400
++++ ./jdk/src/solaris/transport/socket/socket_md.c	2010-04-17 21:48:09.000000000 +0400
 @@ -36,7 +36,7 @@
  #ifdef __solaris__
  #include <thread.h>
@@ -17676,38 +17399,9 @@
  int
  dbgsysTlsAlloc() {
      pthread_key_t key;
-diff -uNr ../orig/jdk/test/java/awt/font/TextLayout/TextLayoutBounds.java ./jdk/test/java/awt/font/TextLayout/TextLayoutBounds.java
---- ../orig/jdk/test/java/awt/font/TextLayout/TextLayoutBounds.java	2009-10-14 10:18:04.000000000 -0700
-+++ ./jdk/test/java/awt/font/TextLayout/TextLayoutBounds.java	2009-11-02 17:27:40.000000000 -0800
-@@ -22,7 +22,7 @@
-  */
- /* @test
-  * @summary verify TextLayout.getBounds() return visual bounds
-- * @bug 6323611
-+ * @bug 6323611 6761856
-  */
- 
- import java.awt.*;
-@@ -39,10 +39,15 @@
-        Rectangle2D tlBounds = tl.getBounds();
-        GlyphVector gv = f.createGlyphVector(frc, s);
-        Rectangle2D gvvBounds = gv.getVisualBounds();
-+       Rectangle2D oBounds = tl.getOutline(null).getBounds2D();
-        System.out.println("tlbounds="+tlBounds);
-        System.out.println("gvbounds="+gvvBounds);
-+       System.out.println("outlineBounds="+oBounds);
-        if (!gvvBounds.equals(tlBounds)) {
--          throw new RuntimeException("Bounds differ");
-+          throw new RuntimeException("Bounds differ [gvv != tl]");
-+       }
-+       if (!tlBounds.equals(oBounds)) {
-+          throw new RuntimeException("Bounds differ [tl != outline]");
-        }
-     }
- }
 diff -uNr ../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-10-14 10:18:43.000000000 -0700
-+++ ./langtools/src/share/classes/com/sun/tools/javah/Util.java	2009-10-28 20:01:54.000000000 -0700
+--- ../orig/langtools/src/share/classes/com/sun/tools/javah/Util.java	2010-04-15 11:36:33.000000000 +0400
++++ ./langtools/src/share/classes/com/sun/tools/javah/Util.java	2010-04-17 21:48:09.000000000 +0400
 @@ -180,6 +180,14 @@
              os = "win32";
          } else if (os.indexOf("Linux") >= 0) {
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list