[Bug 241317] java/openjdk8: unsatisfied link of getmntonname0

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Thu Oct 17 20:45:24 UTC 2019


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=241317

            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 at FreeBSD.org
          Reporter: cmt at freebsd.org
             Flags: maintainer-feedback?(java at FreeBSD.org)
          Assignee: java at FreeBSD.org

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

Since the latest update of openjdk8 (openjdk8-8.232.09.1) german/mediathekview
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.java: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 this
upstream, as I'm not even sure which upstream to report to (and I'd dread to go
through the submit-a-trivial-patch dance with the-company-which-swallowed-Sun).

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

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


More information about the freebsd-java mailing list