[ https://issues.apache.org/jira/browse/HADOOP-8659?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Colin Patrick McCabe reopened HADOOP-8659: ------------------------------------------ Assignee: Colin Patrick McCabe (was: Trevor Robinson) > Native libraries must build with soft-float ABI for Oracle JVM on ARM > --------------------------------------------------------------------- > > Key: HADOOP-8659 > URL: https://issues.apache.org/jira/browse/HADOOP-8659 > Project: Hadoop Common > Issue Type: Bug > Components: native > Environment: armhf Linux with Oracle JVM > Reporter: Trevor Robinson > Assignee: Colin Patrick McCabe > Fix For: 3.0.0, 2.2.0-alpha > > Attachments: HADOOP-8659-fix-001.patch, HADOOP-8659.patch, > HADOOP-8659.patch, HADOOP-8659.patch, HADOOP-8659.patch > > > There was recently an ABI (application binary interface) change in most Linux > distributions for modern ARM processors (ARMv7). Historically, hardware > floating-point (FP) support was optional/vendor-specific for ARM processors, > so for software compatibility, the default ABI required that processors with > FP units copy FP arguments into integer registers (or memory) when calling a > shared library function. Now that hardware floating-point has been > standardized for some time, Linux distributions such as Ubuntu 12.04 have > changed the default ABI to leave FP arguments in FP registers, since this can > significantly improve performance for FP libraries. > Unfortunately, Oracle has not yet released a JVM (as of 7u4) that supports > the new ABI, presumably since this involves some non-trivial changes to > components like JNI. While the soft-float JVM can run on systems with > multi-arch support (currently Debian/Ubuntu) using compatibility libraries, > this configuration requires that any third-party JNI libraries also be > compiled using the soft-float ABI. Since hard-float systems default to > compiling for hard-float, an extra argument to GCC (and installation of a > compatibility library) is required to build soft-float Hadoop native > libraries that work with the Oracle JVM. > Note that OpenJDK on hard-float systems does use the new ABI, and expects JNI > libraries to use it as well. Therefore the fix for this issue requires > detecting the float ABI of the current JVM. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira