RFR(s): 8143291: Remove redundant coding around os::exception_name (original) (raw)
Coleen Phillimore coleen.phillimore at oracle.com
Sat Nov 28 17:33:17 UTC 2015
- Previous message: RFR(s): 8143291: Remove redundant coding around os::exception_name
- Next message: RFR(s): 8143291: Remove redundant coding around os::exception_name
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
I am on US Thanksgiving holiday but this looks great. I'm happy to see these cleanups. It'll make working on the code better.
Can you remove the bogus
//Reconciliation History
lines from jvm_solaris.cpp while you're here?
Are JVM_RaiseSignal and JVM_RegisterSignal on xnix platforms mostly duplicate now? A further RFE?
Thanks, Coleen
On 11/27/15 11:04 AM, Thomas Stüfe wrote:
Ping...
Could I have a second review please? The current webrev is: http://cr.openjdk.java.net/~stuefe/webrevs/8143291/webrev.03/webrev/ And the bug report: https://bugs.openjdk.java.net/browse/JDK-8143291 Thank you! ..Thomas
On Thu, Nov 19, 2015 at 11:23 AM, Thomas Stüfe <thomas.stuefe at gmail.com> wrote: Hi,
please take a look at this change. bug: https://bugs.openjdk.java.net/browse/JDK-8143291 webrev: http://cr.openjdk.java.net/~stuefe/webrevs/8143291/webrev.00/webrev/ This fix does some cleanups around os::exceptionname(). - os::exceptionname() is identical on all Posix platforms (it returns a signal name string for a signal number), so it can be merged into osposix.cpp - There is no need for a platform-specific implementation, as we have already os::Posix::getsignalname(). Use that instead of platform-specific solutions. - I added a function os::Posix::getsignalnumber() which is the inverse of os::Posix::getsignalname(). - Before, a signal-to-number table was kept in jvm.cpp. That was used to implement os::exceptionname() and also for JVMFindSignal -> on AIX, I removed the coding altogether and used os::Posix::getsignalnumber() as a base for JVMFindSignal. -> on the other Unices, I did not feel so confident, because strictly spoken we may change the behaviour slightly to before: os::Posix::getsignalname() knows more signal names than the platform specific tables knew before, so now Signal.findSignal("") would return more matches than before. I am not sure whether I am overcautious here - should I treat the other Unices the same way I treated AIX, i.e. implement Signal.findSignal("") -> JVMFindSignal via os::Posix::getsignalnumber()? This would further simplify the coding. Oh, this fix also fixes an issue where os::exceptionname() would return NULL for an unknown signal number, but no caller ever checks for NULL before printing the result. The new os::exceptionname() always returns a string and also distinguishes between "unknown but valid signal" and "invalid signal". Kind Regards, Thomas
- Previous message: RFR(s): 8143291: Remove redundant coding around os::exception_name
- Next message: RFR(s): 8143291: Remove redundant coding around os::exception_name
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]