zfsonlinux / pkg-zfs

Native ZFS packaging for Debian and Ubuntu
https://launchpad.net/~zfs-native/+archive/daily
308 stars 55 forks source link

ubuntu trusty 14.04 on zfs-stable ppa does not have v0.6.5.8 #219

Closed gdevenyi closed 7 years ago

gdevenyi commented 7 years ago

The packages for older ubuntu versions (on the ppa) have not been updated to the latest tagged release.

jknockaert commented 7 years ago

The zfs kernel module (version 0.6.5.7) provided by the ppa does no longer compile successfully on Trusty (I get an error similar to https://github.com/zfsonlinux/zfs/issues/5408). So I guess this is quite a significant issue, provided that trusty is a LTS which is now about mid-life.

jknockaert commented 7 years ago

@dajhorn Do you still plan to upgrade the packages?

dajhorn commented 7 years ago

@jknockaert, yes, if the Linux 4.4 kernel that was pushed out in the recent Trusty point release is failing to build.

jknockaert commented 7 years ago

@dajhorn I can confirm it fails to build. Upon the upgrade to 4.4.0-59 I got this error:

run-parts: executing /etc/kernel/header_postinst.d/dkms 4.4.0-59-generic /boot/vmlinuz-4.4.0-59-generic
Traceback (most recent call last):
  File "/usr/share/apport/package-hooks/dkms_packages.py", line 97, in <module>
    with open(apport.fileutils.make_report_path(report), 'wb') as f:
AttributeError: 'module' object has no attribute 'make_report_path'
Error! Bad return status for module build on kernel: 4.4.0-59-generic (x86_64)
Consult /var/lib/dkms/zfs/0.6.5.7/build/make.log for more information.

and then in make.log:

  CC [M]  /var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.o
/var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c: In function ‘__zpl_xattr_acl_set_access’:
/var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c:1293:4: warning: passing argument 1 of ‘posix_acl_valid’ from incompatible pointer type [enabled by default]
    error = posix_acl_valid(acl);
    ^
In file included from /var/lib/dkms/zfs/0.6.5.7/build/include/linux/vfs_compat.h:204:0,
                 from /var/lib/dkms/zfs/0.6.5.7/build/include/sys/zpl.h:37,
                 from /var/lib/dkms/zfs/0.6.5.7/build/include/sys/zfs_vnops.h:34,
                 from /var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c:81:
include/linux/posix_acl.h:84:12: note: expected ‘struct user_namespace *’ but argument is of type ‘struct posix_acl *’
 extern int posix_acl_valid(struct user_namespace *, const struct posix_acl *);
            ^
/var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c:1293:4: error: too few arguments to function ‘posix_acl_valid’
    error = posix_acl_valid(acl);
    ^
In file included from /var/lib/dkms/zfs/0.6.5.7/build/include/linux/vfs_compat.h:204:0,
                 from /var/lib/dkms/zfs/0.6.5.7/build/include/sys/zpl.h:37,
                 from /var/lib/dkms/zfs/0.6.5.7/build/include/sys/zfs_vnops.h:34,
                 from /var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c:81:
include/linux/posix_acl.h:84:12: note: declared here
 extern int posix_acl_valid(struct user_namespace *, const struct posix_acl *);
            ^
/var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c: In function ‘__zpl_xattr_acl_set_default’:
/var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c:1333:4: warning: passing argument 1 of ‘posix_acl_valid’ from incompatible pointer type [enabled by default]
    error = posix_acl_valid(acl);
    ^
In file included from /var/lib/dkms/zfs/0.6.5.7/build/include/linux/vfs_compat.h:204:0,
                 from /var/lib/dkms/zfs/0.6.5.7/build/include/sys/zpl.h:37,
                 from /var/lib/dkms/zfs/0.6.5.7/build/include/sys/zfs_vnops.h:34,
                 from /var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c:81:
include/linux/posix_acl.h:84:12: note: expected ‘struct user_namespace *’ but argument is of type ‘struct posix_acl *’
 extern int posix_acl_valid(struct user_namespace *, const struct posix_acl *);
            ^
/var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c:1333:4: error: too few arguments to function ‘posix_acl_valid’
    error = posix_acl_valid(acl);
    ^
In file included from /var/lib/dkms/zfs/0.6.5.7/build/include/linux/vfs_compat.h:204:0,
                 from /var/lib/dkms/zfs/0.6.5.7/build/include/sys/zpl.h:37,
                 from /var/lib/dkms/zfs/0.6.5.7/build/include/sys/zfs_vnops.h:34,
                 from /var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.c:81:
include/linux/posix_acl.h:84:12: note: declared here
 extern int posix_acl_valid(struct user_namespace *, const struct posix_acl *);
            ^
make[5]: *** [/var/lib/dkms/zfs/0.6.5.7/build/module/zfs/zpl_xattr.o] Fout 1
make[4]: *** [/var/lib/dkms/zfs/0.6.5.7/build/module/zfs] Fout 2
make[3]: *** [_module_/var/lib/dkms/zfs/0.6.5.7/build/module] Fout 2
make[3]: Map '/usr/src/linux-headers-4.4.0-59-generic' wordt verlaten
make[2]: *** [modules] Fout 2
make[2]: Map '/var/lib/dkms/zfs/0.6.5.7/build/module' wordt verlaten
make[1]: *** [all-recursive] Fout 1
make[1]: Map '/var/lib/dkms/zfs/0.6.5.7/build' wordt verlaten
make: *** [all] Fout 2

So there seems to be a valid reason to bump it.

oferb1 commented 7 years ago

I am getting the same exact error as well error: too few arguments to function ‘posix_acl_valid’ error = posix_acl_valid(acl);

ReliefCrew commented 7 years ago

+1

leskanic commented 7 years ago

FWIW, zfs 0.6.5.6 - which is the official version provided for Ubuntu 16.04.1 LTS (xenial) - also fails to build with kernel 4.4.0-59 (and based on this bug, with 4.4.0-58, too). Works fine (must have built somehow) with 4.4.0-57.

jasraj commented 7 years ago

I've uploaded the commands we used to update GRUB to auto-boot with the good kernel version (4.4.0-57 as mentioned above) if anyone needs it:

https://gist.github.com/jasraj/646bdfc93aa6d8e2fca33fe1b5692e54

radaxian91 commented 7 years ago

I'm having the same issue. I've temporarily booted into a previous kernel as a workaround.

Hope this gets fixed soon!

jknockaert commented 7 years ago

Seems like this one is fixed. However, as noted in #195, the ZFS ppa is still distributing an outdated version of DKMS.

DarwinAwardWinner commented 7 years ago

For the record, I'm still seeing the same error in 16.04, with kernel 4.4.0-59 and zfs-dkms 0.6.5.6-0ubuntu15.

ReliefCrew commented 7 years ago

There was a new package created ~14 hours ago (see: https://launchpad.net/~zfs-native/+archive/ubuntu/stable) and after a quick "apt-get update && apt-get upgrade" it fixed the issue for us... our ZFS machines are all running Trusty (14.04.5 LTS) however. Had to stick with the older kernel for almost a week but the sky did not fall ;-) So, alls well that ends well?

That said, we do have Xenial (16.04.1 LTS) running in qemu but couldn't reproduce the issue there; not the best test either since the VM has no actual/physical ZFS drives attached. Still, the module did load in an updated+upgraded Xenial running inside qemu and reported "no pools available".

jknockaert commented 7 years ago

The custom DKMS was removed from the ZFS ppa, so now falling back to the (updated) DKMS in the ubuntu ppa. @dajhorn Thanks for fixing! I guess this one can be closed now.

jknockaert commented 7 years ago

@DarwinAwardWinner The 16.04 package is maintained by Ubuntu.

rsyring commented 7 years ago

I can confirm ZFS 0.6.5.8 is compiling/installing now for Kernel 4.4.0-59.

dajhorn commented 7 years ago

Closing as resolved.

Thanks for reporting breakage involving the HWE stack.

step21 commented 7 years ago

Request for information: I ran into this same issue when upgrading kernel to 4.4.0-62 (at least that is whe i noticed) but with Paragon's NTFS/HFS driver on Ubuntu 16.04. Could you give me any pointers what the actual issue was? All other packages like dkms should be up to date. I also wrote their support, but as this is a free product, not sure how much they care.

dajhorn commented 7 years ago

@step21, the kernel driver interface changed. Your NTFS driver probably needs to be updated by its vendor in the same way that ZoL was updated.