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:
> >
> >> 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,
> >>>> I tried upgrading my host from 11.1-STABLE to 12.0-CURRENT, and it didn’t work because abd_is_linear is an undefined symbol (it exists in sys/conf/files, but not sys/modules/zfs/Makefile). I tried adding abd.c to sys/modules/zfs/Makefile and it didn’t immediately fix my compilation problem (ran into a linker error instead).
> >>>> If it isn’t fixed in the next few hours I’ll 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/574dc95cf8272e16f6d44aff6cb4e08dede08886
> >
> > Unfortunately… this is head, verbatim, which means that the bug still exists.
> > This gives me an idea of where I should look though.
>
> The URL indeed suggests that the change should be in head, but it's not 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 'extern
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 the
header?
--
John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14630232.pvpQT5dAYX>
