RFR(XS): 8078243: Fix include of stack.inline.hpp in taskqueue.hpp.
stefan.karlsson at oracle.com
Tue Apr 21 14:29:42 UTC 2015
On 2015-04-21 15:27, Lindenmaier, Goetz wrote:
> Hi Stefan,
> removing the include of psScavenge.inline.hpp from vmPSOperations.cpp
> This is not a real fix of the taskqueue issue, but fine with 8076177 coming up - especially
> as it reduces dependencies and needs not be reverted with 8076177.
Looks good, I'll sponsor this. Thanks for using this workaround-fix.
> Best regards,
> -----Original Message-----
> From: Stefan Karlsson [mailto:stefan.karlsson at oracle.com]
> Sent: Dienstag, 21. April 2015 13:53
> To: Lindenmaier, Goetz; hotspot-dev at openjdk.java.net; hotspot-gc-dev at openjdk.java.net
> Subject: Re: RFR(XS): 8078243: Fix include of stack.inline.hpp in taskqueue.hpp.
> On 2015-04-21 13:52, Stefan Karlsson wrote:
>> On 2015-04-21 12:04, Stefan Karlsson wrote:
>>> Hi Goetz,
>>> On 2015-04-21 10:20, Lindenmaier, Goetz wrote:
>>>> another include that's missing. This time it breaks aix only, would
>>>> not have been
>>>> detected by non-pch build J
>>>> taskqueue.hpp calls Stack::push(), thus it must include
>>>> Compilation of parallelScavenge/vmPSOperations.cpp failed.
>>>> Please review this tiny change. I also please need a sponsor.
>>> I understand that this is an easy fix, but I don't want
>>> stack.inline.hpp to be added to the hpp file. The preferred fix would
>>> be extract the offending push function out of the taskqueue.hpp file
>>> and put it in a new file called taskqueue.inline.hpp. I created a RFE
>>> for that a couple of weeks ago:
>>> https://bugs.openjdk.java.net/browse/JDK-8076177 - Remove usage of
>>> stack.inline.hpp functions from taskqueue.hpp
>> Here's an example of what it would take to move the push functions out
>> to taskqueue.inline.hpp. Only compiled locally on my machine. I had to
>> move some functions from PSParallelCompact to ParCompactionManager to
>> get rid of a circular dependency between the two classes. That would
>> probably be done as a separate RFE.
> And the link:
>>> Until someone takes care about 8076177, could you workaround the
>>> compile error by including stack.inline.hpp in vmPSOperations.cpp? Do
>>> you know what in vmPSOperations.cpp depends on taskqueue.hpp? I can't
>>> find anything, but I see that we include psScavenge.inline.hpp, which
>>> includes taskqueue.hpp via psPromotionManager.inline.hpp and
>>> psPromotionManager.hpp. Maybe you could workaround the problem by
>>> removing the "#include .../psScavenge.inline.hpp" line, which isn't
>>> needed by vmPSOperations.cpp?
>>>> Best regards,
More information about the hotspot-gc-dev