Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Apr 2015 11:17:14 +0300
From:      Andriy Gapon <avg@FreeBSD.org>
To:        FreeBSD Current <freebsd-current@FreeBSD.org>
Subject:   backward dependencies on libzfs
Message-ID:  <553DF08A.9000007@FreeBSD.org>

next in thread | raw e-mail | index | archive | help

I am not sure what's the best list to discuss this issue, so let me raise it here.

It seems that libzfs_core can not be used without also linking / loading libzfs:
/lib/libzfs_core.so.2: Undefined symbol "zcmd_ioctl_compat"

The same is true for libnvpair but for a different reason (and it looks like mea
culpa):
/lib/libnvpair.so.2: Undefined symbol "aok"

Both dependencies seem to be backward, because:
$ ldd /lib/libzfs.so.2
/lib/libzfs.so.2:
        libmd.so.6 => /lib/libmd.so.6 (0x801647000)
        libthr.so.3 => /lib/libthr.so.3 (0x801857000)
        libumem.so.2 => /lib/libumem.so.2 (0x801a7c000)
        libutil.so.9 => /lib/libutil.so.9 (0x801c7d000)
        libuutil.so.2 => /lib/libuutil.so.2 (0x801e8f000)
        libm.so.5 => /lib/libm.so.5 (0x802098000)
        *libnvpair.so.2 => /lib/libnvpair.so.2 (0x8022c1000)*
        libavl.so.2 => /lib/libavl.so.2 (0x8024d6000)
        libbsdxml.so.4 => /lib/libbsdxml.so.4 (0x8026d8000)
        libgeom.so.5 => /lib/libgeom.so.5 (0x8028ff000)
        *libzfs_core.so.2 => /lib/libzfs_core.so.2 (0x802b04000)*
        libc.so.7 => /lib/libc.so.7 (0x80081f000)
        libsbuf.so.6 => /lib/libsbuf.so.6 (0x802d08000)

So, there are circular dependencies between libzfs and the other library in both
cases.
It seems that those dependencies do not cause much, if any trouble, in practice,
but they are not nice, because they are unexpected and they are not present on
other OpenZFS platforms.

-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?553DF08A.9000007>