Compile error using "ZFS Testing"

    • OMV 2.x
    • Resolved
    • Compile error using "ZFS Testing"

      Hello

      I installed a copy of Stone burner 2.1.18 and received a compile error while trying to activate openmediavault-zfs 0.6.4 with "ZFS Testing" selected from the OMV-extras. Did a modprobe by hand and got a fatal error. I'm going to try unchecking zfs-testing and try again.

      If anyone is interested this is the error returned from the GUI:

      Loading new zfs-0.6.5.2 DKMS files...
      First Installation: checking all kernels...
      Building only for 3.2.0-4-amd64
      Building initial module for 3.2.0-4-amd64
      Error!
      Bad return status for module build on kernel: 3.2.0-4-amd64 (x86_64)
      Consult /var/lib/dkms/zfs/0.6.5.2/build/make.log for more information.
      Setting up bzip2 (1.0.6-4) ...


      Here is the end of the attached make.log (I doubt it's a hardware fault):

      CC [M] /var/lib/dkms/zfs/0.6.5.2/build/module/zfs/sha256.o
      CC [M] /var/lib/dkms/zfs/0.6.5.2/build/module/zfs/spa.o
      /var/lib/dkms/zfs/0.6.5.2/build/module/zfs/spa.c: In function 'spa_prop_validate':
      /var/lib/dkms/zfs/0.6.5.2/build/module/zfs/spa.c:620:1: internal compiler error: Segmentation fault
      Please submit a full bug report,
      with preprocessed source if appropriate.
      See <file:///usr/share/doc/gcc-4.6/README.Bugs> for instructions.
      The bug is not reproducible, so it is likely a hardware or OS problem.
      make[7]: *** [/var/lib/dkms/zfs/0.6.5.2/build/module/zfs/spa.o] Error 1
      make[6]: *** [/var/lib/dkms/zfs/0.6.5.2/build/module/zfs] Error 2
      make[5]: *** [_module_/var/lib/dkms/zfs/0.6.5.2/build/module] Error 2
      make[4]: *** [sub-make] Error 2
      make[3]: *** [all] Error 2
      make[3]: Leaving directory `/usr/src/linux-headers-3.2.0-4-amd64'
      make[2]: *** [modules] Error 2
      make[2]: Leaving directory `/var/lib/dkms/zfs/0.6.5.2/build/module'
      make[1]: *** [all-recursive] Error 1
      make[1]: Leaving directory `/var/lib/dkms/zfs/0.6.5.2/build'
      make: *** [all] Error 2
      root@omv:/home/derek#

      Thanks!
      Files
      • make_log.txt

        (5.22 kB, downloaded 196 times, last: )
    • a dkms remove, add, install for zfs 0.6.5.2 module didn't complain

      I followed this thread.: Zfs error after update

      And got this output.

      root@omv:/home/derek# dkms remove -m zfs -v 0.6.5.2 --all

      ------------------------------
      Deleting module version: 0.6.5.2
      completely from the DKMS tree.
      ------------------------------
      Done.
      root@omv:/home/derek# dkms add -m zfs -v 0.6.5.2

      Creating symlink /var/lib/dkms/zfs/0.6.5.2/source ->
      /usr/src/zfs-0.6.5.2

      DKMS: add completed.
      root@omv:/home/derek# dkms install -m zfs -v 0.6.5.2

      Kernel preparation unnecessary for this kernel. Skipping...

      Running the pre_build script:
      checking for gawk... no
      checking for mawk... mawk
      checking metadata... META file
      checking build system type... x86_64-unknown-linux-gnu
      checking host system type... x86_64-unknown-linux-gnu
      checking target system type... x86_64-unknown-linux-gnu
      checking whether to enable maintainer-specific portions of Makefiles... no
      checking whether make supports nested variables... yes
      checking for a BSD-compatible install... /usr/bin/install -c
      checking whether build environment is sane... yes
      checking for a thread-safe mkdir -p... /bin/mkdir -p
      checking whether make sets $(MAKE)... yes
      checking for gcc... gcc
      checking whether the C compiler works... yes
      checking for C compiler default output file name... a.out
      checking for suffix of executables...
      checking whether we are cross compiling... no
      checking for suffix of object files... o
      checking whether we are using the GNU C compiler... yes
      checking whether gcc accepts -g... yes
      checking for gcc option to accept ISO C89... none needed
      checking for style of include used by make... GNU
      checking dependency style of gcc... gcc3
      checking how to print strings... printf
      checking for a sed that does not truncate output... /bin/sed
      checking for grep that handles long lines and -e... /bin/grep
      checking for egrep... /bin/grep -E
      checking for fgrep... /bin/grep -F
      checking for ld used by gcc... /usr/bin/ld
      checking if the linker (/usr/bin/ld) is GNU ld... yes
      checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
      checking the name lister (/usr/bin/nm -B) interface... BSD nm
      checking whether ln -s works... yes
      checking the maximum length of command line arguments... 1572864
      checking whether the shell understands some XSI constructs... yes
      checking whether the shell understands "+="... yes
      checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
      checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
      checking for /usr/bin/ld option to reload object files... -r
      checking for objdump... objdump
      checking how to recognize dependent libraries... pass_all
      checking for dlltool... no
      checking how to associate runtime and link libraries... printf %s\n
      checking for ar... ar
      checking for archiver @FILE support... @
      checking for strip... strip
      checking for ranlib... ranlib
      checking command to parse /usr/bin/nm -B output from gcc object... ok
      checking for sysroot... no
      checking for mt... mt
      checking if mt is a manifest tool... no
      checking how to run the C preprocessor... gcc -E
      checking for ANSI C header files... yes
      checking for sys/types.h... yes
      checking for sys/stat.h... yes
      checking for stdlib.h... yes
      checking for string.h... yes
      checking for memory.h... yes
      checking for strings.h... yes
      checking for inttypes.h... yes
      checking for stdint.h... yes
      checking for unistd.h... yes
      checking for dlfcn.h... yes
      checking for objdir... .libs
      checking if gcc supports -fno-rtti -fno-exceptions... no
      checking for gcc option to produce PIC... -fPIC -DPIC
      checking if gcc PIC flag -fPIC -DPIC works... yes
      checking if gcc static flag -static works... yes
      checking if gcc supports -c -o file.o... yes
      checking if gcc supports -c -o file.o... (cached) yes
      checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
      checking whether -lc should be explicitly linked in... no
      checking dynamic linker characteristics... GNU/Linux ld.so
      checking how to hardcode library paths into programs... immediate
      checking whether stripping libraries is possible... yes
      checking if libtool supports shared libraries... yes
      checking whether to build shared libraries... yes
      checking whether to build static libraries... yes
      checking dependency style of gcc... gcc3
      checking zfs author... OpenZFS on Linux
      checking zfs license... CDDL
      checking linux distribution... debian
      checking default package type... deb
      checking default init directory... ${prefix}/etc/init.d
      checking default init script type... lsb
      checking default init config direectory... /etc/default
      checking whether initramfs-tools is available... yes
      checking whether dracut is available... no
      checking whether rpm is available... no
      checking whether rpmbuild is available... no
      checking whether spec files are available... yes (rpm/generic/*.spec.in)
      checking whether dpkg is available... yes (1.16.16)
      checking whether dpkg-buildpackage is available... yes (1.16.16.)
      checking whether alien is available... no
      checking zfs config... kernel
      checking for -Wno-unused-but-set-variable support... yes
      checking for -Wno-bool-compare support... no
      checking kernel source directory... /lib/modules/3.2.0-4-amd64/./source
      checking kernel build directory... /lib/modules/3.2.0-4-amd64/build
      checking kernel source version... 3.2.0-4-amd64
      checking kernel file name for module symbols... Module.symvers
      checking spl source directory... /usr/src/spl-0.6.5
      checking spl build directory... /var/lib/dkms/spl/0.6.5/3.2.0-4-amd64/x86_64
      checking spl source version... 0.6.5-1-wheezy
      checking spl file name for module symbols... Module.symvers
      checking whether modules can be built... yes
      checking whether Linux was built with CONFIG_DEBUG_LOCK_ALLOC... no
      checking whether DECLARE_EVENT_CLASS() is available... no
      checking whether current->bio_tail exists... no
      checking whether current->bio_list exists... yes
      checking block device operation prototypes... struct block_device
      checking whether block_device_operations.release is void... int
      checking whether kernel defines fmode_t... yes
      checking whether kernel defines KOBJ_NAME_LEN... no
      checking whether blkdev_get() wants 3 args... yes
      checking whether blkdev_get_by_path() is available... yes
      checking whether open_bdev_exclusive() is available... no
      checking whether lookup_bdev() is available... yes
      checking whether invalidate_bdev() wants 1 arg... yes
      checking whether bdev_logical_block_size() is available... yes
      checking whether bdev_physical_block_size() is available... yes
      checking whether bio has bi_iter... no
      checking whether BIO_RW_FAILFAST_* are defined... no
      checking whether REQ_FAILFAST_MASK is defined... yes
      checking whether bio_end_io_t wants 1 arg... no
      checking whether BIO_RW_BARRIER is defined... no
      checking whether BIO_RW_DISCARD is defined... no
      checking whether blk_queue_flush() is available... yes
      checking whether blk_queue_flush() is GPL-only... yes
      checking whether blk_queue_max_hw_sectors() is available... yes
      checking whether blk_queue_max_segments() is available... yes
      checking whether get_disk_ro() is available... yes
      checking whether get_gendisk() is available... yes
      checking whether ql->discard_granularity is available... yes
      checking whether super_block uses const struct xattr_hander... yes
      checking whether xattr_handler->get() wants dentry... yes
      checking whether xattr_handler->set() wants dentry... yes
      checking whether xattr_handler->list() wants dentry... yes
      checking whether inode_owner_or_capable() exists... yes
      checking whether posix_acl_from_xattr() needs user_ns... no
      checking whether posix_acl_release() is available... yes
      checking whether posix_acl_release() is GPL-only... yes
      checking whether posix_acl_chmod exists... yes
      checking whether __posix_acl_chmod exists... no
      checking whether inode has i_acl and i_default_acl... yes
      checking whether posix_acl_equiv_mode() wants umode_t... yes
      checking whether iops->permission() exists... yes
      checking whether iops->permission() wants nameidata... no
      checking whether iops->check_acl() exists... no
      checking whether iops->check_acl() wants flags... no
      checking whether iops->get_acl() exists... yes
      checking whether current_umask exists... yes
      checking whether sops->show_options() wants dentry... no
      checking whether file_inode() is available... no
      checking whether fops->fsync() wants... range
      checking whether sops->evict_inode() exists... yes
      checking whether sops->dirty_inode() wants flags... yes
      checking whether sops->nr_cached_objects() exists... yes
      checking whether sops->free_cached_objects() exists... yes
      checking whether fops->fallocate() exists... yes
      checking whether iops->fallocate() exists... no
      checking whether iops->create()/mkdir()/mknod() take umode_t... no
      checking whether iops->lookup() passes nameidata... yes
      checking whether iops->create() passes nameidata... yes
      checking whether iops->follow_link() passes nameidata... yes
      checking whether iops->put_link() passes nameidata... yes
      checking whether iops->truncate_range() exists... yes
      checking whether dops->d_automount() exists... yes
      checking whether eops->encode_fh() wants inode... no
      checking whether eops->commit_metadata() exists... yes
      checking whether clear_inode() is available... no
      checking whether insert_inode_locked() is available... yes
      checking whether d_make_root() is available... no
      checking whether d_obtain_alias() is available... yes
      checking whether d_prune_aliases() is available... yes
      checking whether d_set_d_op() is available... yes
      checking whether dops->d_revalidate() takes struct nameidata... yes
      checking whether dentry uses const struct dentry_operations... yes
      checking whether check_disk_size_change() is available... yes
      checking whether truncate_setsize() is available... yes
      checking whether security_inode_init_security wants 6 args... no
      checking whether security_inode_init_security wants callback... yes
      checking whether mount_nodev() is available... yes
      checking whether super_block has s_shrink... yes
      checking whether shrink_control has nid... no
      checking whether super_block has s_instances list_head... yes
      checking whether super_block has s_d_op... yes
      checking whether bdi_setup_and_register() wants 2 args... no
      checking whether bdi_setup_and_register() wants 3 args... yes
      checking whether set_nlink() is available... yes
      checking whether elevator_change() is available... yes
      checking whether sget() wants 5 args... no
      checking whether lseek_execute() is available... no
      checking whether fops->iterate() is available... no
      checking whether fops->readdir() is available... yes
      checking whether fops->read/write_iter() are available... no
      checking whether kmap_atomic wants 1 args... yes
      checking whether follow_down_one() is available... yes
      checking whether make_request_fn() returns int... no
      checking whether make_request_fn() returns void... yes
      checking whether generic IO accounting symbols are avaliable... no
      checking whether debugging is enabled... no
      checking whether dmu tx validation is enabled... no
      configure: creating ./config.status
      config.status: creating Makefile
      config.status: creating module/Makefile
      config.status: creating module/avl/Makefile
      config.status: creating module/nvpair/Makefile
      config.status: creating module/unicode/Makefile
      config.status: creating module/zcommon/Makefile
      config.status: creating module/zfs/Makefile
      config.status: creating module/zpios/Makefile
      config.status: creating include/Makefile
      config.status: creating include/linux/Makefile
      config.status: creating include/sys/Makefile
      config.status: creating include/sys/fs/Makefile
      config.status: creating include/sys/fm/Makefile
      config.status: creating include/sys/fm/fs/Makefile
      config.status: creating zfs.release
      config.status: creating zfs_config.h
      config.status: executing depfiles commands
      config.status: executing libtool commands

      Building module:
      cleaning build area....
      make KERNELRELEASE=3.2.0-4-amd64.........................
      cleaning build area....

      DKMS: build completed.

      zavl.ko:
      Running module version sanity check.
      - Original module
      - No original module exists within this kernel
      - Installation
      - Installing to /lib/modules/3.2.0-4-amd64/updates/dkms/

      zcommon.ko:
      Running module version sanity check.
      - Original module
      - No original module exists within this kernel
      - Installation
      - Installing to /lib/modules/3.2.0-4-amd64/updates/dkms/

      znvpair.ko:
      Running module version sanity check.
      - Original module
      - No original module exists within this kernel
      - Installation
      - Installing to /lib/modules/3.2.0-4-amd64/updates/dkms/

      zpios.ko:
      Running module version sanity check.
      - Original module
      - No original module exists within this kernel
      - Installation
      - Installing to /lib/modules/3.2.0-4-amd64/updates/dkms/

      zunicode.ko:
      Running module version sanity check.
      - Original module
      - No original module exists within this kernel
      - Installation
      - Installing to /lib/modules/3.2.0-4-amd64/updates/dkms/

      zfs.ko:
      Running module version sanity check.
      - Original module
      - No original module exists within this kernel
      - Installation
      - Installing to /lib/modules/3.2.0-4-amd64/updates/dkms/

      depmod....

      DKMS: install completed.
      root@omv:/home/derek# dkms status
      iscsitarget, 1.4.20.2, 3.2.0-4-amd64, x86_64: installed
      iscsitarget, 1.4.20.2, 3.2.0-4-rt-amd64, x86_64: installed
      spl, 0.6.5, 3.2.0-4-amd64, x86_64: installed
      zfs, 0.6.5.2, 3.2.0-4-amd64, x86_64: installed
      root@omv:/home/derek#

      Someone is going to tell me my hardware is bad. I still doubt that it's bad :P