build failure in perfMemory_solaris.cpp?
David Holmes
david.holmes at oracle.com
Wed Feb 4 01:35:39 UTC 2015
Hi Volker,
On 4/02/2015 3:09 AM, Volker Simonis wrote:
> Hi,
>
> is somebody working on this issue?
It is assigned to Gerald but I don't know what his current priorities
are. Also I hope we're trying to figure out whether the best way to fix
this is to change the code or change the build flags - but that needs
info from the Studio compiler folk.
David
> 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