[aarch64-port-dev ] Simple HTTP server app crashes on JDK 11 and 8 on OSv AArch64

Andrew Haley aph-open at littlepinkcloud.com
Mon Mar 7 12:24:02 UTC 2022


On 3/7/22 09:53, Andrew Dinn wrote:
> On 06/03/2022 10:11, Andrew Haley wrote:
>>> This might be a good time for us to resurrect the 64-bit address patch,
>>> but that might not help you much, because I guess you'll want older Java
>>> versions to work.
>>
>> Or, easier, fix the patching sequence always to put ffff into the top
>> nybble. That would be easy enough, but I guess I'd need to be able to
>> test on OSv.
 >
> Note that Waldemar said in his initial post that this is a *unikernel*.

That's why it has kernel address mapping. I don't understand what point
you're making. Seems obvious?

>> I am one of the committers to the OSv project (http://osv.io/). OSv is is a
>> Linux-compatible unikernel.
> 
> I believe that means everything is compiled into kernel space. If so,
> then I believe that implies that malloced addresses that are usually
> mapped in the user space range will actually reside in the kernel
> address space range,-- including addresses for JITted code. Perhaps
> Waldemar can confirm?
> 
> That would suggest that patching ffff into the top 16 bits is indeed the
> required fix.

Well, maybe. But AIUI, the kernel can see all of memory, both the ffff_...
and the 0000_... ranges. So if it's possible for a unikernel to return
malloc'd memory in the 0000_... range, that would be the quickest way to
get things working, although, it would also be nice to fix HotSpot to
be able to handle ffff_... relocs. As I said, not hard, but needs access
to test it.

-- 
Andrew Haley  (he/him)
Java Platform Lead Engineer
Red Hat UK Ltd. <https://www.redhat.com>
https://keybase.io/andrewhaley
EAC8 43EB D3EF DB98 CC77 2FAD A5CD 6035 332F A671


More information about the aarch64-port-dev mailing list