Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 May 2009 15:01:15 -0700
From:      Artem Belevich <artemb@gmail.com>
To:        freebsd-current@freebsd.org
Subject:   [patch] zfs.ko loading failure
Message-ID:  <ed91d4a80905081501v5ade3911je73ceb7539595475@mail.gmail.com>

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

After recent changes (r191915) opensolaris.ko refers to utsname
variable that's actually compiled into zfs.ko
In turn zfs.ko requires symbols from opensolaris.ko and this circular
dependency leads to failure to load zfs.ko.

Following patch moves opensolaris_misc.c to modules/opensolaris and
fixes the issue

--Artem

diff -r fae94895cc67 sys/modules/opensolaris/Makefile
--- a/sys/modules/opensolaris/Makefile	Fri May 08 12:22:10 2009 -0700
+++ b/sys/modules/opensolaris/Makefile	Fri May 08 14:59:51 2009 -0700
@@ -1,15 +1,16 @@
 # $FreeBSD: head/sys/modules/opensolaris/Makefile 190374 2009-03-24
15:48:35Z marius $

 .PATH: ${.CURDIR}/../../cddl/compat/opensolaris/kern

 KMOD=		opensolaris
 SRCS=		opensolaris.c		\
 		opensolaris_cmn_err.c	\
+         	opensolaris_misc.c      \
 		opensolaris_kmem.c

 .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" ||
${MACHINE_ARCH} == "ia64" || ${MACHINE_ARCH} == "sparc64"
 .PATH:	${.CURDIR}/../../cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}
 SRCS+=		atomic.S
 .else
 SRCS+=		opensolaris_atomic.c
 .endif
diff -r fae94895cc67 sys/modules/zfs/Makefile
--- a/sys/modules/zfs/Makefile	Fri May 08 12:22:10 2009 -0700
+++ b/sys/modules/zfs/Makefile	Fri May 08 14:59:51 2009 -0700
@@ -15,17 +15,16 @@ SRCS+=	nvpair.c
 .PATH:	${.CURDIR}/../../cddl/contrib/opensolaris/common/unicode
 SRCS+=	u8_textprep.c

 .PATH:	${.CURDIR}/../../cddl/compat/opensolaris/kern
 SRCS+=	opensolaris_kmem.c
 SRCS+=	opensolaris_kobj.c
 SRCS+=	opensolaris_kstat.c
 SRCS+=	opensolaris_lookup.c
-SRCS+=	opensolaris_misc.c
 SRCS+=	opensolaris_policy.c
 SRCS+=	opensolaris_string.c
 SRCS+=	opensolaris_vfs.c
 SRCS+=	opensolaris_zone.c

 .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" ||
${MACHINE_ARCH} == "ia64" || ${MACHINE_ARCH} == "sparc64"
 .PATH:	${SUNW}/common/atomic/${MACHINE_ARCH}
 SRCS+=	atomic.S



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