RFR: JDK-8079248 JDK fails with "jdk\\bin\\management_ext.dll: The specified procedure could not be found"

David Holmes david.holmes at oracle.com
Mon May 4 07:27:16 UTC 2015


Hi Staffan,

Seems fine as a spot fix but I'm wondering if this shouldn't be a common 
option for all the dlls now we are building with VS2013?

Thanks,
David

On 4/05/2015 4:52 PM, Staffan Larsen wrote:
> This is a P1 bug that surfaced when changes from jdk9/dev and jdk9/hs-rt met in jdk9/hs. In this case the windows compiler upgrades in jdk9/dev met changes in jdk9/hs-rt that moved a call to GetProcessMemoryInfo from management.dll to management_ext.dll. With the compiler upgrades PSAPI_VERSION=1 is needed when compiling the library calling GetProcessMemoryInfo. This fix simply moves that patch from make/lib/Lib-java.management.gmk to make/lib/Lib-jdk.management.gmk. The patch was introduced in JDK-8076557.
>
> I will push the change below directly to jdk9/hs.
>
> Thanks,
> /Staffan
>
>
> diff --git a/make/lib/Lib-java.management.gmk b/make/lib/Lib-java.management.gmk
> --- a/make/lib/Lib-java.management.gmk
> +++ b/make/lib/Lib-java.management.gmk
> @@ -38,11 +38,6 @@
>       $(LIBJAVA_HEADER_FLAGS) \
>       #
>
> -# In (at least) VS2013 and later, -DPSAPI_VERSION=1 is needed to generate
> -# a binary that is compatible with windows versions older than 7/2008R2.
> -# See MSDN documentation for GetProcessMemoryInfo for more information.
> -BUILD_LIBMANAGEMENT_CFLAGS += -DPSAPI_VERSION=1
> -
>   LIBMANAGEMENT_OPTIMIZATION := HIGH
>   ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), )
>     ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
> diff --git a/make/lib/Lib-jdk.management.gmk b/make/lib/Lib-jdk.management.gmk
> --- a/make/lib/Lib-jdk.management.gmk
> +++ b/make/lib/Lib-jdk.management.gmk
> @@ -39,6 +39,11 @@
>       $(LIBJAVA_HEADER_FLAGS) \
>       #
>
> +# In (at least) VS2013 and later, -DPSAPI_VERSION=1 is needed to generate
> +# a binary that is compatible with windows versions older than 7/2008R2.
> +# See MSDN documentation for GetProcessMemoryInfo for more information.
> +BUILD_LIBMANAGEMENT_EXT_CFLAGS += -DPSAPI_VERSION=1
> +
>   LIBMANAGEMENT_EXT_OPTIMIZATION := HIGH
>   ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), )
>     ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
>



More information about the build-dev mailing list