8192898: AIX build broken after 8190308

Doerr, Martin martin.doerr at sap.com
Fri Dec 1 16:05:53 UTC 2017


Hi Coleen,

thanks a lot for your help. Makes sense.

Best regards,
Martin


-----Original Message-----
From: hotspot-runtime-dev [mailto:hotspot-runtime-dev-bounces at openjdk.java.net] On Behalf Of coleen.phillimore at oracle.com
Sent: Freitag, 1. Dezember 2017 16:57
To: hotspot-runtime-dev at openjdk.java.net
Subject: Re: 8192898: AIX build broken after 8190308


Hi Martin,

I will sponsor your trivial fix so that it gets pushed today before the 
jdk10 deadline.  The OS's that Oracle supports seem not affected but we 
can open a bug if we find other OS's that become broken.

os_posix is tricky for AIX because it seems AIX is posix-like enough to 
not want to duplicate the code for AIX.   It seems reasonable to have 
this conditional compilation.

Thanks,
Coleen

On 12/1/17 9:03 AM, Doerr, Martin wrote:
> Hi,
>
> I have opened a new bug jdk-8192898.
> "MAP_NORESERVE" was introduced in os_posix.cpp. It is not POSIX and it is not defined on AIX. Not sure if any other OS is affected, too.
>
> Should non-POSIX code be in os_posix.cpp?
>
> I can provide a trivial fix for AIX (see below). But maybe somebody has a better idea?
>
> Best regards,
> Martin
>
>
> --- a/src/hotspot/os/posix/os_posix.cpp Thu Nov 30 18:05:57 2017 +0100
> +++ b/src/hotspot/os/posix/os_posix.cpp Thu Nov 30 18:55:02 2017 +0100
> @@ -200,7 +200,7 @@
>
> static char* reserve_mmapped_memory(size_t bytes, char* requested_addr) {
>     char * addr;
> -  int flags = MAP_PRIVATE | MAP_NORESERVE | MAP_ANONYMOUS;
> +  int flags = MAP_PRIVATE NOT_AIX( | MAP_NORESERVE ) | MAP_ANONYMOUS;
>     if (requested_addr != NULL) {
>       assert((uintptr_t)requested_addr % os::vm_page_size() == 0, "Requested address should be aligned to OS page size");
>       flags |= MAP_FIXED;



More information about the hotspot-runtime-dev mailing list