RFR(XS): 8078243: Fix include of stack.inline.hpp in taskqueue.hpp.
goetz.lindenmaier at sap.com
Tue Apr 21 13:27:21 UTC 2015
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.
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-dev