review (S) for 6970683: improvements to hs_err output
David.Holmes at oracle.com
Fri Oct 8 15:43:09 PDT 2010
Coleen Phillimore said the following on 10/09/10 02:03:
> This change looks good to me. I missed when print_location() was added
> for the registers, but it does a lot of things that we used to consider
> unsafe from the error handler. And I didn't like all the white space.
It was added (by me) as part of the SE-Embedded integration but was only
enabled for ARM and PPC at the time. Note that it is the hs_find
functionality from debug.cpp transferred into the error handler. And
yes, sometime those checks will induce secondary crashes.
What whitespace are you referring to?
> wonder if you should check for Universe::is_initialized() in vmError
> before calling this?
No idea. As I said the code came from the debug.cpp code - no better, no
> Can you attach an "after" version of hs_err? I guess I can get one of
> my own pretty easily after you check this in, but I'd like to see one
> Lastly, what sort of problems can you diagnose from the code cache bounds?
> Tom Rodriguez wrote:
>> 6970683: improvements to hs_err output
>> There are a few things missing from the hs_err dump that would be
>> useful. First we don't dump the sparc L and I registers. Second some
>> information about the size and contents of the code cache would be
>> useful. Third we should dump a larger region around the faulting
>> instruction. Additionally the new register to memory mapping output
>> can crash which stops us from getting the stack and instructions at
>> the faulting pc, so I moved it into it's own section. block_start
>> would assert in some cases so I augmented existing logic to just
>> return null. I also changed the formatting to remove all the extra
>> whitespace and made some of the output more compact and eliminated
>> most of the useless whitespace.
More information about the hotspot-dev