From owner-freebsd-current@FreeBSD.ORG Tue Apr 28 00:57:33 2015 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7424F67C; Tue, 28 Apr 2015 00:57:33 +0000 (UTC) Received: from mail-la0-x230.google.com (mail-la0-x230.google.com [IPv6:2a00:1450:4010:c03::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 15DAA1751; Tue, 28 Apr 2015 00:57:33 +0000 (UTC) Received: by laat2 with SMTP id t2so92793047laa.1; Mon, 27 Apr 2015 17:57:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=4/9WroFIB4sFve3kA8vlewQK/NAoEPLFhToVmgHqAW8=; b=u0EWwnAJqVjCtJjeHW9nvse9n7HaKE3m2L+ucCIlrH6vNQpInWsJPnRbv9QPHC5QGo Hk5HkCw4zbV62dk9n3GnHREg/u2gTzLQsWzP7szj/ldlRUliRpltx6DYnAImgmF7BAUR D8BO8WoXREjp3POSpOo6miFgdXbUbzxk2LXzE5SeKu50Rs1ltyLoBBqRdMj8cquW5tVJ A0Ur/20MP5WFhj58SSkkSfUCskU8cqxmV1EDg+c0Yxe707osnVnC72RaHXT9PPahepKz TrPjPXu7BLg6avoZ2y7UhYNYzD4bwmD7s+FylgoZa9kl36/uOkcxZ6ViDAxTYDhgnMXO vDww== MIME-Version: 1.0 X-Received: by 10.152.23.66 with SMTP id k2mr6849203laf.89.1430182650339; Mon, 27 Apr 2015 17:57:30 -0700 (PDT) Sender: crodr001@gmail.com Received: by 10.112.164.38 with HTTP; Mon, 27 Apr 2015 17:57:30 -0700 (PDT) In-Reply-To: <553DF08A.9000007@FreeBSD.org> References: <553DF08A.9000007@FreeBSD.org> Date: Mon, 27 Apr 2015 17:57:30 -0700 X-Google-Sender-Auth: D_HeF7-827xHip2NfrsGIf_x1ko Message-ID: Subject: Re: backward dependencies on libzfs From: Craig Rodrigues To: Andriy Gapon Cc: FreeBSD Current Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Apr 2015 00:57:33 -0000 On Mon, Apr 27, 2015 at 1:17 AM, Andriy Gapon wrote: > > 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. > > Fixes similar to this: https://svnweb.freebsd.org/changeset/base/272484 need to be done to plug these symbol dependency problems in the libraries. -- Craig