8076177: Remove usage of stack.inline.hpp functions from taskqueue.hpp

Lindenmaier, Goetz goetz.lindenmaier at sap.com
Fri Apr 24 12:32:25 UTC 2015


Hi Stefan,

thanks, it patches and builds fine now on ppc linux and aix!

Best regards,
  Goetz.

-----Original Message-----
From: Stefan Karlsson [mailto:stefan.karlsson at oracle.com] 
Sent: Freitag, 24. April 2015 13:04
To: Lindenmaier, Goetz; hotspot-gc-dev
Subject: Re: 8076177: Remove usage of stack.inline.hpp functions from taskqueue.hpp

Hi Goetz,

On 2015-04-24 11:47, Lindenmaier, Goetz wrote:
> Hi Stefan,
>
> I appreciate your changes to taskqueue, especially the introduction of
> a .inline.hpp file.  On a first view they look good.
>
> I tried to push the change this depends on, but it does not apply, and, if fixed, does not build:
> http://cr.openjdk.java.net/~stefank/8078345/webrev.01/hotspot.changeset
> The code contains a new call to mark_and_push.  I just commented it out for now.

That patch was in turn built upon the two patches that I thought was 
unrelated, but they were not. All the related patches have been pushed 
to hotspot-gc, so the patch should apply now.

>
> Then, I applied this patch, and started reviewing it, but it does not contain all the
> changes in the diffs you mailed around.  E.g., orderAccess.inline.hpp is not removed from taskqueue.hpp.
> http://cr.openjdk.java.net/~stefank/8076177/webrev.01/all/hotspot.changeset
>
> Could you please post a complete patch, so I can test it?

Sigh. I forgot about the webrev bug that creates incomplete/incorrect files:
https://bugs.openjdk.java.net/browse/CODETOOLS-7901115 - webrev -r 
generates broken patch files

I've added the output from hg diff -r qparent at:
http://cr.openjdk.java.net/~stefank/8076177/webrev.01/all/hotspot.diff

Hopefully that will apply without problems.

Thanks,
StefanK

>
> Best regards,
>    Goetz
>
> Rejected patch:
> --- psParallelCompact.hpp
> +++ psParallelCompact.hpp
> @@ -956,11 +947,8 @@
>       void do_klass(Klass* klass);
>     };
>   
> -  friend class FollowStackClosure;
>     friend class AdjustPointerClosure;
>     friend class AdjustKlassClosure;
> -  friend class FollowKlassClosure;
> -  friend class InstanceClassLoaderKlass;
>     friend class RefProcTaskProxy;
>   
>    private:
>
>
> Build error:
>
> psParallelCompact.hpp: In member function void PSParallelCompact::KeepAliveClosure::do_oop_work(T*) [with T = oopDesc*]
> psParallelCompact.cpp:823:   instantiated from here
> psParallelCompact.hpp:1299: error: mark_and_push was not declared in this scope
> psParallelCompact.hpp: In member function void PSParallelCompact::KeepAliveClosure::do_oop_work(T*) [with T = narrowOop]
> psParallelCompact.cpp:824:   instantiated from here
> psParallelCompact.hpp:1299: error: mark_and_push was not declared in this scope
>
>
>
>
>
> -----Original Message-----
> From: hotspot-gc-dev [mailto:hotspot-gc-dev-bounces at openjdk.java.net] On Behalf Of Stefan Karlsson
> Sent: Donnerstag, 23. April 2015 13:44
> To: hotspot-gc-dev
> Subject: RFR: 8076177: Remove usage of stack.inline.hpp functions from taskqueue.hpp
>
> Hi,
>
> Please review this patch to move the implementation of the push, pop,
> and steal functions out of taskqueue.hpp into a new taskqueue.inline.hpp
> file.
>
> I've split the patch into three part, but intend to push them as one
> change, unless someone wants this to be pushed as three separate changes.
>
> http://cr.openjdk.java.net/~stefank/8076177/webrev.01/00.movePush/
> http://cr.openjdk.java.net/~stefank/8076177/webrev.01/01.movePop/
> http://cr.openjdk.java.net/~stefank/8076177/webrev.01/02.moveSteal/
> http://cr.openjdk.java.net/~stefank/8076177/webrev.01/all/
>
> https://bugs.openjdk.java.net/browse/JDK-8076177
>
> The patch builds upon this patch that hasn't been pushed yet:
> http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/2015-April/013039.html
>
> Thanks,
> StefanK



More information about the hotspot-gc-dev mailing list