build failure in perfMemory_solaris.cpp?

Volker Simonis volker.simonis at gmail.com
Tue Feb 3 17:09:53 UTC 2015


Hi,

is somebody working on this issue?

It's really annoying that is is not possible to build on plain Solaris
11 system any more.

Regards,
Volker


On Sat, Jan 24, 2015 at 1:32 AM, David Holmes <david.holmes at oracle.com> wrote:
> The Solaris problem doesn't appear when using our S10u6 devkits so wasn't
> noticed internally. It isn't clear exactly when Solaris decided to switch
> from SVR4 definition to POSIX definition. Not sure if we want ugly ifdefs or
> wait until our official compiler set encounters the problem.
>
> Can't comment on the AIX situation.
>
> David
>
>
> On 24/01/2015 8:07 AM, Alejandro E Murillo wrote:
>>
>>
>> by the timing when this started to happen, I believe
>> this  was caused by the CPU changes integrated into jdk9/dev
>> on Wednesday (they didn't come through jdk9/hs).
>> I went to check those changesets and this looks like the prime suspect:
>>
>> Changeset: c656c7540cb1
>> Author:    gthornbr
>> Date:      2014-11-17 15:51 -0500
>> URL:http://hg.openjdk.java.net/jdk9/hs/hotspot/rev/c656c7540cb1
>>
>> 8050807: Better performing performance data handling
>> Reviewed-by: dcubed, pnauman, ctornqvi, dholmes, mschoene
>> Contributed-by:gerald.thornbrugh at oracle.com
>>
>> ! src/os/bsd/vm/perfMemory_bsd.cpp
>> ! src/os/linux/vm/perfMemory_linux.cpp
>> ! src/os/solaris/vm/perfMemory_solaris.cpp
>> ! src/share/vm/utilities/vmError.cpp
>>
>>
>> Jerry, I'm assigning the bug to you. Check it out and reassign if needed
>>
>> Alejandro
>>
>> On 1/23/2015 11:26 AM, Anthony Scarpino wrote:
>>>
>>> I created one:
>>>
>>> https://bugs.openjdk.java.net/browse/JDK-8071501
>>>
>>> Tony
>>>
>>> On 01/23/2015 10:07 AM, Bradford Wetmore wrote:
>>>>
>>>> Is there a bug id yet?  I haven't seen one showing up in a quick search
>>>> for dd_fd or perfMemory_solaris.cpp.
>>>>
>>>> For the record, I'm on what I think is the required platform/compilers:
>>>>
>>>> % uname -a
>>>> SunOS sca00bkv 5.11 11.1 sun4v sparc sun4v
>>>>
>>>> % more /etc/release
>>>>                              Oracle Solaris 11.1 SPARC
>>>>    Copyright (c) 1983, 2013, Oracle and/or its affiliates.  All rights
>>>> reserved.
>>>>                             Assembled 06 November 2013
>>>>
>>>> % grep BUILD_CC out.txt
>>>> BUILD_CC:= /java/devtools/sparc/SUNWspro/SS12u3/bin/cc
>>>>
>>>> Brad
>>>>
>>>>
>>>>
>>>> On 1/23/2015 8:32 AM, Volker Simonis wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>> we can see the same in our nightly OpenJDK 8/9 builds
>>>>> (http://cr.openjdk.java.net/~simonis/ppc-aix-port/) and would be
>>>>> interested in a solution as well.
>>>>>
>>>>> Thanks,
>>>>> Volker
>>>>>
>>>>> On Fri, Jan 23, 2015 at 5:19 AM, David Holmes
>>>>> <david.holmes at oracle.com> wrote:
>>>>>>
>>>>>> Hi Anthony,
>>>>>>
>>>>>>
>>>>>> On 23/01/2015 10:33 AM, Anthony Scarpino wrote:
>>>>>>>
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> I just pulled the jdk9/dev gate today and hit a build failure on
>>>>>>> SPARC
>>>>>>> Solaris 11.1 when compiling perfMemory_solaris.cpp in hotspot.  I'm
>>>>>>> using SS12u3 compilers.  Anyone else see a similar error or know what
>>>>>>> might be going wrong?
>>>>>>>
>>>>>>> ...hotspot/src/os/solaris/vm/perfMemory_solaris.cpp", line 337:
>>>>>>> Error:
>>>>>>> dd_fd is not a member of DIR.
>>>>>>> ...hotspot/src/os/solaris/vm/perfMemory_solaris.cpp", line 369:
>>>>>>> Error:
>>>>>>> dd_fd is not a member of DIR."
>>>>>>> gmake[8]: *** [perfMemory_solaris.o] Error 2
>>>>>>
>>>>>>
>>>>>>
>>>>>> This code was brought in via the recent CPU integration of bug
>>>>>> 8050807. (Hi
>>>>>> Jerry! - cc'd)
>>>>>>
>>>>>> It looks like Solaris has two potential definitions of DIR:
>>>>>>
>>>>>> #if defined(__USE_LEGACY_PROTOTYPES__)
>>>>>> /* traditional SVR4 definition */
>>>>>> typedef struct {
>>>>>>          int     dd_fd;          /* file descriptor */
>>>>>>          int     dd_loc;         /* offset in block */
>>>>>>          int     dd_size;        /* amount of valid data */
>>>>>>          char    *dd_buf;        /* directory block */
>>>>>> } DIR;                          /* stream data from opendir() */
>>>>>> #else
>>>>>> /* default definition (POSIX conformant) */
>>>>>> typedef struct {
>>>>>>          int     d_fd;           /* file descriptor */
>>>>>>          int     d_loc;          /* offset in block */
>>>>>>          int     d_size;         /* amount of valid data */
>>>>>>          char    *d_buf;         /* directory block */
>>>>>> } DIR;                          /* stream data from opendir() */
>>>>>> #endif  /* __USE_LEGACY_PROTOTYPES__ */
>>>>>>
>>>>>> I can't see what controls __USE_LEGACY_PROTOTYPES__ but presumably
>>>>>> either
>>>>>> something in Solaris 11.1, or something in SS12u3 is causing this
>>>>>> difference.
>>>>>>
>>>>>> David
>>>>>>
>>>>>>> thanks
>>>>>>>
>>>>>>> Tony
>>>
>>>
>>
>



More information about the build-dev mailing list