Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 02 Aug 2017 09:07:18 -0700
From:      John Baldwin <jhb@freebsd.org>
To:        Andriy Gapon <avg@freebsd.org>
Cc:        "Ngie Cooper (yaneurabeya)" <yaneurabeya@gmail.com>, FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: zfs.ko no longer loads after r320156: unresolved symbol: abd_is_linear
Message-ID:  <14630232.pvpQT5dAYX@ralph.baldwin.cx>
In-Reply-To: <ae4900b5-97cc-112a-714f-a9140d4a1726@FreeBSD.org>
References:  <780A67EE-C3F1-46E5-A213-E253B710338E@gmail.com> <B16DFAFC-916B-4319-8FE1-D84C6C8D6961@gmail.com> <ae4900b5-97cc-112a-714f-a9140d4a1726@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday, August 02, 2017 10:14:01 AM Andriy Gapon wrote:
> On 02/08/2017 04:00, Ngie Cooper (yaneurabeya) wrote:
> >=20
> >> On Aug 1, 2017, at 09:21, John Baldwin <jhb@freebsd.org> wrote:
> >>
> >> On Tuesday, August 01, 2017 09:47:41 AM Andriy Gapon wrote:
> >>> On 01/08/2017 02:31, Ngie Cooper wrote:
> >>>> Hi,
> >>>> =09I tried upgrading my host from 11.1-STABLE to 12.0-CURRENT, a=
nd it didn=E2=80=99t work because abd_is_linear is an undefined symbol =
(it exists in sys/conf/files, but not sys/modules/zfs/Makefile). I trie=
d adding abd.c to sys/modules/zfs/Makefile and it didn=E2=80=99t immedi=
ately fix my compilation problem (ran into a linker error instead).
> >>>> =09If it isn=E2=80=99t fixed in the next few hours I=E2=80=99ll =
try my hand at fixing the problem.
> >>>
> >>> I am not sure what exact problem you have...
> >>> abd.c should be added to the list of source files via
> >>> .include "${SUNW}/uts/common/Makefile.files"
> >>>
> >>> Perhaps something to do with "inline"...
> >>
> >> Oh, yes.  If you use -fno-inline-funcs or the like.  I forgot to
> >> send this to Andriy earlier, but here is the fix I'm using:
> >>
> >> https://github.com/freebsd/freebsd/commit/574dc95cf8272e16f6d44aff=
6cb4e08dede08886
> >=20
> > =09Unfortunately=E2=80=A6 this is head, verbatim, which means that =
the bug still exists.
> > =09This gives me an idea of where I should look though.
>=20
> The URL indeed suggests that the change should be in head, but it's n=
ot there as
> far as I can tell.  I never saw it being committed.

Not yet.  I'm trying to decide if 'static inline' is more correct (for =
me it
results in 3 separate copies of abd_is_linear in zfs.ko) vs using 'exte=
rn
inline'.  The latter seems possibly more correct but more of a pain?  I=
 think
for that it needs to be extern in only a single file and 'inline' in th=
e
header?

--=20
John Baldwin



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