RFR: 8136978 Much nearly duplicated code for vmError support

Coleen Phillimore coleen.phillimore at oracle.com
Tue Nov 17 20:53:07 UTC 2015


Hi Sebastian,

I think this change looks very good.  I can test the patch on all the 
platforms that we have, and let you know if it needs adjustment.  Maybe 
someone with aix can test there too.  Thank you for the change removing 
this duplicated code.

Thanks,
Coleen

On 10/16/15 12:33 AM, Sebastian Sickelmann wrote:
> Hi,
>
> i have looked at the enhancement JDK-8136978, please find my first suggestion
> at [0]http://cr.openjdk.java.net/~sebastian/8136978/webrev.00/.
>
> I first looked also at another solution but don't liked it. For some details
> on this and comments of Coleen and Kim to this, see the thread at hotspot-dev[1].
>
> Right now i only compile-"tested" it on my linux(x86_64) machine, so there might
> be some error in aix,bsd,solaris. I am not sure if i can setup my machine to compile
> those as well. For the windows-part i am actually also not able to compile or test it.
> I think there is a good change to optimize the use of #include's in the changed files,
> but I am not sure how i can effectively work out where i can reduce some imports.
>
> There are no additional tests for this. What is the best way to really test such a change
> on all platforms. Do you use your development-machine for this, or is there some
> infrastructure that can test such multi-platform changes for you?
>
> Here is a short description of the suggested change:
>
> Nearly identically implementations of VMError moved from the os/[linux|aix|bsd|solaris]
> to a os/posix. The parts that are different were refactored and are now in the os-specific
> implementations of the os class. The two os specific methods ucontext_get_pc and
> ucontext_set_pc are moved to the declaration of the os::Posix class. The implementations
> of those remain in the os_[linux|aix|bsd|solaris].cpp implementations but are renamed
> acordingly. All uses of these methods are replaces to use the "os::Poxis prefix".
>
> For the method VMError::show_message_box also the windows implementation is changed. Now
> there are two methods in the declarartion of the class os that are used to help the
> os-independent implementation of show_message. The two messages are named formatDebugMessage
> and startDebugging. The os-independet implemetation of show_message can be found in
> share/vm/utilities/vmError.cpp
> -- Sebastian
>
>
> [0]http://cr.openjdk.java.net/~sebastian/8136978/webrev.00/
> [1]http://mail.openjdk.java.net/pipermail/hotspot-dev/2015-October/020249.html  
> suggestion to this.
>
>



More information about the hotspot-runtime-dev mailing list