RFR(S): 8165315: [ppc] Port "8133749: NMT detail stack trace cleanup"

Volker Simonis volker.simonis at gmail.com
Mon Sep 5 14:15:59 UTC 2016


On Monday, September 5, 2016, Lindenmaier, Goetz <goetz.lindenmaier at sap.com>
wrote:

> Hi,
>
> The test coming with 8133749 showed a row of problems on the ppc platforms.
> This change fixed these.
>
>
> Also, I moved "isSlowDebugBuild()" to Platform.java as there also is
>
> isDebugBuild(), and we have other places where we use this.
>
> Please review this change. I also please need a sponsor.
> http://cr.openjdk.java.net/~goetz/wr16/8165315-fixStackTrace/01/webrev.bs/
> http://cr.openjdk.java.net/~goetz/wr16/8165315-fixStackTrace/01/webrev.hs/
>
> More details:
>
> On power, current_frame() returns the frame of the method that
> called current_frame(). This is as documented in os.hpp.
>
> Get_native_stack() in os_posix.cpp expects current_frame() to go up
> one more frame. To adapt to this expectation, we increment toSkip by
> one on ppc, which has the same effect. (If we change current_frame(),
> one less frame will be printed to hs_err files etc.)
>
>
Hi Goetz,

Your change looks good. I just don't understand the difference between
current_frame() on various platforms. Does it mean that other platforms
except ppc64 are always missing the first frame of stack traces in the
hs_err file ?

Thanks,
Volker

"8153743: AllocateHeap() and ReallocateHeap() should use ALWAYSINLINE macro"
> is not properly implemented on Aix. The 'inline' keyword is missing in the
> macro on aix.
>
> Also, on Aix ALWAYSINLINE has no effect in the slowdebug build. So the
> check in the test whether AllocateHeap is inlined must be skipped as on
> other platforms.
>
> Best regards,
>   Goetz.
>


More information about the hotspot-runtime-dev mailing list