Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Oct 2019 20:45:21 +0000
From:      bugzilla-noreply@freebsd.org
To:        java@FreeBSD.org
Subject:   [Bug 241317] java/openjdk8: unsatisfied link of getmntonname0
Message-ID:  <bug-241317-8522@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D241317

            Bug ID: 241317
           Summary: java/openjdk8: unsatisfied link of getmntonname0
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Keywords: easy, patch, patch-ready
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: java@FreeBSD.org
          Reporter: cmt@freebsd.org
             Flags: maintainer-feedback?(java@FreeBSD.org)
          Assignee: java@FreeBSD.org

Created attachment 208391
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D208391&action=
=3Dedit
make BsdNativeDispatcher actoally load the native library to dispatch to

Since the latest update of openjdk8 (openjdk8-8.232.09.1) german/mediathekv=
iew
broke: clicking on a download button gives no reaction in the GUI and an
exception like this (shortened to the relevant part, because java):

Exception in thread "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError:
sun.nio.fs.BsdNativeDispatcher.getmntonname0(J)[B
        at sun.nio.fs.BsdNativeDispatcher.getmntonname0(Native Method)
        at
sun.nio.fs.BsdNativeDispatcher.getmntonname(BsdNativeDispatcher.java:61)
        at sun.nio.fs.BsdFileStore.findMountEntry(BsdFileStore.java:67)
        at sun.nio.fs.UnixFileStore.<init>(UnixFileStore.java:65)
        at sun.nio.fs.BsdFileStore.<init>(BsdFileStore.java:40)
        at
sun.nio.fs.BsdFileSystemProvider.getFileStore(BsdFileSystemProvider.java:55)
        at
sun.nio.fs.BsdFileSystemProvider.getFileStore(BsdFileSystemProvider.java:39)
        at
sun.nio.fs.UnixFileSystemProvider.getFileStore(UnixFileSystemProvider.java:=
368)
        at java.nio.file.Files.getFileStore(Files.java:1461)
        at
mediathek.gui.dialog.DialogAddDownload.getFreeDiskSpace(DialogAddDownload.j=
ava:268)

Poking around jdk/src/solaris/classes/sun/nio/fs/BsdNativeDispatcher.java it
appears that indeed getmntonname0() is declared "native", but there are no
provisions to load a suitable library for that method. The other
NativeDispatchers call System.loadLibrary("nio"), which would make a lot of
sense here, too - a "NativeDispatcher" should at least have some access to =
the
library it is dispatching to.

Attached is a patch (to be dropped into files/) which implements the same
System.loadLibrary() logic with it's wrappers in BsdNativeDispatcher.java. =
This
still passes poudriere and fixes mediathekview for me. I've not reported th=
is
upstream, as I'm not even sure which upstream to report to (and I'd dread t=
o go
through the submit-a-trivial-patch dance with the-company-which-swallowed-S=
un).

I'm debugging a JDK - what am I doing with my live?

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-241317-8522>