Discussion:
OpenJDK-jre and sun.arch.abi
Arne Ploese
2018-02-08 10:01:33 UTC
Permalink
Hi,

Im trying to figure out under java what platform Im on.

there are some System properties, but on the debian arm platform
"sun.arch.abi" is missing.
This would give me the distiction between gnueabi and gnueabihf -
wether I have hard or soft floating point.

On the raspberry PI3 its defined...

So I think its a bug, but where to file a bug or fix it?

Thanks,
Arne
John Paul Adrian Glaubitz
2018-02-08 12:22:51 UTC
Permalink
Hi Arne!
Post by Arne Ploese
there are some System properties, but on the debian arm platform
"sun.arch.abi" is missing.
This would give me the distiction between gnueabi and gnueabihf -
wether I have hard or soft floating point.
If you're running Hotspot natively and not the ZeroVM, you're always
on armhf as anything lower is supported by Zero only.

Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer - ***@debian.org
`. `' Freie Universitaet Berlin - ***@physik.fu-berlin.de
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Arne Ploese
2018-02-08 13:59:10 UTC
Permalink
My problem is,
I wrote a lib that replaces gnu.io (http://github.com/aploese/spsw/)
for serial port access - so I must detect the real abi on all platforms, not just debian.
Or is gnueabi outdated and thus needs no support at all?

Arne

Am Donnerstag, den 08.02.2018, 13:22 +0100 schrieb John Paul Adrian
Post by John Paul Adrian Glaubitz
Hi Arne!
Post by Arne Ploese
there are some System properties, but on the debian arm platform
"sun.arch.abi" is missing.
This would give me the distiction between gnueabi and gnueabihf -
wether I have hard or soft floating point.
If you're running Hotspot natively and not the ZeroVM, you're always
on armhf as anything lower is supported by Zero only.
Adrian
John Paul Adrian Glaubitz
2018-02-08 14:11:18 UTC
Permalink
Hi!
Post by Arne Ploese
I wrote a lib that replaces gnu.io (http://github.com/aploese/spsw/)
for serial port access - so I must detect the real abi on all platforms, not just debian.
I'm not talking with my Debian hat on, I'm talking with my OpenJDK upstream hat on.
Post by Arne Ploese
Or is gnueabi outdated and thus needs no support at all?
OpenJDK 9 or newer support armhf or newer only *if* you're using the Hotspot VM,
if you're using the Zero VM (Zero being the one running on any architecture),
then the older ARM ABIs are supported.

Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer - ***@debian.org
`. `' Freie Universitaet Berlin - ***@physik.fu-berlin.de
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Arne Ploese
2018-02-08 15:41:00 UTC
Permalink
Some one installed this VM:
https://raspberrypi.stackexchange.com/questions/45976/how-do-i-update-j
ava-8-in-raspbian/68114#68114

No idea what vm this is, but it has the system property "sun.arch.abi"
with "gnueabihf" set.
Here Im able to figure out the multiarch tupel is "arm-linux-
gnueabihf".
On debian the abi is missing, so I only can binary parse /proc/self/exe
to figure out on what system im running - I did it and it has its
drawbacks too.
Now I decided to brute force try to load the candidates "arm-linux-
gnueabihf" and "arm-linux-gnueabi" and hope that one succedes.
But I would prefer to have the system property sun.arch.abi properly
set.

Arne

Loading...