[CFT][PREVIEW] ZFS new SPA

Johan Hendriks joh.hendriks at gmail.com
Mon Jun 4 11:11:46 UTC 2012


Marcelo Araujo schreef:
> Dear Johan,
>
> As you don't have the zhack directory, you must create it before to 
> apply the patch.
>
> *cd: /usr/src/cddl/usr.sbin/zhack: No such file or directory*
>
> I'm using the latest version of FreeBSD with the patch, and it works 
> pretty well.
>
>
>
> Best Regards,
> - Araujo
>
>
> 2012/6/4 Johan Hendriks <joh.hendriks at gmail.com 
> <mailto:joh.hendriks at gmail.com>>
>
>     Martin Matuska schreef:
>
>         Hello all,
>
>         I have ported the ZFS features support (SPA version 5000) from
>         Illumos
>         to FreeBSD-current.
>         What is still missing is boot support - needs to be implemented.
>
>         Patch against CURRENT:
>         http://www.vx.sk/download/patches/freebsd/zfs/head-zfs-features.patch
>
>         Amd64 ISO images for testing (bootable, work well in VirtualBox):
>         Basic:
>         http://www.vx.sk/download/ISO-images/mfsbsd/head-zfs-features.iso
>         (86MB)
>         With full installworld:
>         http://www.vx.sk/download/ISO-images/mfsbsd/head-se-zfs-features.iso
>         (239MB)
>
>         TODO: boot support (check feature availability from ZFS boot code)
>
>         References:
>         https://hg.openindiana.org/upstream/illumos/illumos-gate/rev/2889e2596bd6
>         https://hg.openindiana.org/upstream/illumos/illumos-gate/rev/1949b688d5fb
>
>     hello.
>
>     I saw this announcement, and decided to try the patch.
>     I just did a csup today and patched the tree.
>
>     # cd /usr/src
>     # patch < /root/patch/head-zfs-features.patch
>
>     then after doing a make cleanworld i get the following.
>
>     # make cleanworld
>     "/usr/src/Makefile", line 242: warning: duplicate script for
>     target "clean" ignored
>     "/usr/src/Makefile", line 242: warning: duplicate script for
>     target "cleandepend" ignored
>     "/usr/src/Makefile", line 242: warning: duplicate script for
>     target "distribute" ignored
>     "/usr/src/Makefile", line 242: warning: duplicate script for
>     target "lint" ignored
>     "/usr/src/Makefile", line 242: warning: duplicate script for
>     target "obj" ignored
>     "/usr/src/Makefile", line 242: warning: duplicate script for
>     target "objlink" ignored
>     "/usr/src/Makefile", line 242: warning: duplicate script for
>     target "tags" ignored
>     "/usr/src/Makefile", line 242: warning: duplicate script for
>     target "files" ignored
>     "/usr/src/Makefile", line 242: warning: duplicate script for
>     target "includes" ignored
>     rm -rf /usr/obj/usr/src/*
>     chflags -R 0 /usr/obj/usr/src
>     rm -rf /usr/obj/usr/src/*
>
>     # make buildworld starts the with the same messages, but fails.
>
>     ===> cddl/usr.sbin/lockstat (cleandir)
>     rm -f lockstat lockstat.o sym.o
>     rm -f .depend GPATH GRTAGS GSYMS GTAGS
>     ===> cddl/usr.sbin/zdb (cleandir)
>     rm -f zdb zdb.o zdb_il.o zdb.8.gz zdb.8.cat.gz
>     rm -f .depend GPATH GRTAGS GSYMS GTAGS
>     ===> cddl/usr.sbin/zhack (cleandir)
>     cd: /usr/src/cddl/usr.sbin/zhack: No such file or directory
>     *** [cleandir] Error code 2
>
>     Stop in /usr/src/cddl/usr.sbin.
>     *** [cleandir] Error code 1
>
>     Stop in /usr/src/cddl.
>     *** [cddl.cleandir__D] Error code 1
>
>     Stop in /usr/src.
>     *** [_cleanobj] Error code 1
>
>     Stop in /usr/src.
>     *** [buildworld] Error code 1
>
>     Stop in /usr/src.
>
>     Here is my make.conf
>
>     CPUTYPE?=nocona
>
>     #CLANG
>     CC=clang
>     CXX=clang++
>     CPP=clang-cpp
>
>     KERNCONF=KRNL
>
>     BATCH_DELETE_OLD_FILES= yes
>     CUPS_OVERWRITE_BASE=yes
>
>     WITHOUT_X11=yes
>     WITHOUT_GUI=yes
>
>     #### END MAKE.CONF FILE ###
>
>     regards.
>     Johan Hendriks
>
>     _______________________________________________
>     freebsd-fs at freebsd.org <mailto:freebsd-fs at freebsd.org> mailing list
>     http://lists.freebsd.org/mailman/listinfo/freebsd-fs
>     To unsubscribe, send any mail to
>     "freebsd-fs-unsubscribe at freebsd.org
>     <mailto:freebsd-fs-unsubscribe at freebsd.org>"
>
>
>
>
> -- 
> Marcelo Araujo
> araujo at FreeBSD.org
Well i did not get the duplicte script errors anymore, but the build 
world did not succeed

the error is

/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:550:1: 
error: redefinition of
       'fnvlist_alloc'
fnvlist_alloc(void)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:52:1: 
note: previous definition
       is here
fnvlist_alloc(void)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:558:1: 
error: redefinition of
       'fnvlist_free'
fnvlist_free(nvlist_t *nvl)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:60:1: 
note: previous definition
       is here
fnvlist_free(nvlist_t *nvl)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:564:1: 
error: redefinition of
       'fnvlist_size'
fnvlist_size(nvlist_t *nvl)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:66:1: 
note: previous definition
       is here
fnvlist_size(nvlist_t *nvl)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:576:1: 
error: redefinition of
       'fnvlist_pack'
fnvlist_pack(nvlist_t *nvl, size_t *sizep)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:78:1: 
note: previous definition
       is here
fnvlist_pack(nvlist_t *nvl, size_t *sizep)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:586:1: 
error: redefinition of
       'fnvlist_pack_free'
fnvlist_pack_free(char *pack, size_t size)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:88:1: 
note: previous definition
       is here
fnvlist_pack_free(char *pack, size_t size)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:596:1: 
error: redefinition of
       'fnvlist_unpack'
fnvlist_unpack(char *buf, size_t buflen)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:98:1: 
note: previous definition
       is here
fnvlist_unpack(char *buf, size_t buflen)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:604:1: 
error: redefinition of
       'fnvlist_dup'
fnvlist_dup(nvlist_t *nvl)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:106:1: 
note: previous definition
       is here
fnvlist_dup(nvlist_t *nvl)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:612:1: 
error: redefinition of
       'fnvlist_merge'
fnvlist_merge(nvlist_t *dst, nvlist_t *src)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:114:1: 
note: previous definition
       is here
fnvlist_merge(nvlist_t *dst, nvlist_t *src)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:618:1: 
error: redefinition of
       'fnvlist_add_boolean'
fnvlist_add_boolean(nvlist_t *nvl, const char *name)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:120:1: 
note: previous definition
       is here
fnvlist_add_boolean(nvlist_t *nvl, const char *name)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:624:1: 
error: redefinition of
       'fnvlist_add_boolean_value'
fnvlist_add_boolean_value(nvlist_t *nvl, const char *name, boolean_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:126:1: 
note: previous definition
       is here
fnvlist_add_boolean_value(nvlist_t *nvl, const char *name, boolean_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:630:1: 
error: redefinition of
       'fnvlist_add_byte'
fnvlist_add_byte(nvlist_t *nvl, const char *name, uchar_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:132:1: 
note: previous definition
       is here
fnvlist_add_byte(nvlist_t *nvl, const char *name, uchar_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:636:1: 
error: redefinition of
       'fnvlist_add_int8'
fnvlist_add_int8(nvlist_t *nvl, const char *name, int8_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:138:1: 
note: previous definition
       is here
fnvlist_add_int8(nvlist_t *nvl, const char *name, int8_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:642:1: 
error: redefinition of
       'fnvlist_add_uint8'
fnvlist_add_uint8(nvlist_t *nvl, const char *name, uint8_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:144:1: 
note: previous definition
       is here
fnvlist_add_uint8(nvlist_t *nvl, const char *name, uint8_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:648:1: 
error: redefinition of
       'fnvlist_add_int16'
fnvlist_add_int16(nvlist_t *nvl, const char *name, int16_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:150:1: 
note: previous definition
       is here
fnvlist_add_int16(nvlist_t *nvl, const char *name, int16_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:654:1: 
error: redefinition of
       'fnvlist_add_uint16'
fnvlist_add_uint16(nvlist_t *nvl, const char *name, uint16_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:156:1: 
note: previous definition
       is here
fnvlist_add_uint16(nvlist_t *nvl, const char *name, uint16_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:660:1: 
error: redefinition of
       'fnvlist_add_int32'
fnvlist_add_int32(nvlist_t *nvl, const char *name, int32_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:162:1: 
note: previous definition
       is here
fnvlist_add_int32(nvlist_t *nvl, const char *name, int32_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:666:1: 
error: redefinition of
       'fnvlist_add_uint32'
fnvlist_add_uint32(nvlist_t *nvl, const char *name, uint32_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:168:1: 
note: previous definition
       is here
fnvlist_add_uint32(nvlist_t *nvl, const char *name, uint32_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:672:1: 
error: redefinition of
       'fnvlist_add_int64'
fnvlist_add_int64(nvlist_t *nvl, const char *name, int64_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:174:1: 
note: previous definition
       is here
fnvlist_add_int64(nvlist_t *nvl, const char *name, int64_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:678:1: 
error: redefinition of
       'fnvlist_add_uint64'
fnvlist_add_uint64(nvlist_t *nvl, const char *name, uint64_t val)
^
/usr/src/cddl/lib/libnvpair/../../../sys/cddl/contrib/opensolaris/common/nvpair/fnvpair.c:180:1: 
note: previous definition
       is here
fnvlist_add_uint64(nvlist_t *nvl, const char *name, uint64_t val)
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
*** [fnvpair.o] Error code 1

Stop in /usr/src/cddl/lib/libnvpair.
*** [all] Error code 1

Stop in /usr/src/cddl/lib.
*** [cddl/lib__L] Error code 1

Stop in /usr/src.
*** [libraries] Error code 1

Stop in /usr/src.
*** [_libraries] Error code 1

Stop in /usr/src.
*** [buildworld] Error code 1

Stop in /usr/src.

BTW i am using clang, maybe that is the culprit?

regards
Johan Hendriks


More information about the freebsd-fs mailing list