RFR(S): 8165315: [ppc] Port "8133749: NMT detail stack trace cleanup"
Lindenmaier, Goetz
goetz.lindenmaier at sap.com
Mon Sep 5 14:25:59 UTC 2016
HI Volker,
thanks for looking at this.
> Does it mean that other platforms except ppc64 are always missing the first frame of stack traces in the hs_err
Yes, in some cases:
frame fr = _context ? os::fetch_frame_from_context(_context)
: os::current_frame();
print_native_stack(st, fr, _thread, buf, sizeof(buf));
Best regards,
Goetz.
> -----Original Message-----
> From: Volker Simonis [mailto:volker.simonis at gmail.com]
> Sent: Montag, 5. September 2016 16:16
> To: Lindenmaier, Goetz <goetz.lindenmaier at sap.com>
> Cc: hotspot-runtime-dev at openjdk.java.net
> Subject: Re: RFR(S): 8165315: [ppc] Port "8133749: NMT detail stack trace
> cleanup"
>
>
>
> On Monday, September 5, 2016, Lindenmaier, Goetz
> <goetz.lindenmaier at sap.com <mailto: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.bs/>
> http://cr.openjdk.java.net/~goetz/wr16/8165315-
> fixStackTrace/01/webrev.hs/
> <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