diff options
author | Clemens Fruhwirth <clemens@endorphin.org> | 2018-06-23 14:39:13 +0200 |
---|---|---|
committer | Robin Gloster <mail@glob.in> | 2018-06-25 16:55:42 +0200 |
commit | 43a737b81cd3f41f1df0f4f0bef25e048ac9155a (patch) | |
tree | 9061fc069fe7f12f56bad9b1d2df333374dc4c14 /pkgs/os-specific/linux/zfs | |
parent | 01847b7c5f961d869e6823e54bbfe19eab077034 (diff) |
Disable fortify and stackprotector hardening for spl/zfs.
Linux 4.16 introduces a stackprotector detection script that returns different results for the kernel compilation run and the spl/zfs compilation run, as the setting for hardening are different. This results in a broken ABI between spl/zfs and the compiled kernel, breaking ZFS. Also disabling the fortify and stackprotector hardening, as we do for the kernel, fixes that.
Diffstat (limited to 'pkgs/os-specific/linux/zfs')
-rw-r--r-- | pkgs/os-specific/linux/zfs/default.nix | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix index c44d64b8fa815..6eac54ddf6510 100644 --- a/pkgs/os-specific/linux/zfs/default.nix +++ b/pkgs/os-specific/linux/zfs/default.nix @@ -61,7 +61,7 @@ let # for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work NIX_CFLAGS_LINK = "-lgcc_s"; - hardeningDisable = [ "pic" ]; + hardeningDisable = [ "fortify" "stackprotector" "pic" ]; preConfigure = '' substituteInPlace ./module/zfs/zfs_ctldir.c --replace "umount -t zfs" "${utillinux}/bin/umount -t zfs" @@ -157,7 +157,7 @@ in { # to be adapted zfsStable = common { # comment/uncomment if breaking kernel versions are known - incompatibleKernelVersion = "4.16"; + incompatibleKernelVersion = null; # this package should point to the latest release. version = "0.7.9"; @@ -176,7 +176,7 @@ in { zfsUnstable = common rec { # comment/uncomment if breaking kernel versions are known - incompatibleKernelVersion = "4.16"; + incompatibleKernelVersion = null; # this package should point to a version / git revision compatible with the latest kernel release version = "2018-05-22"; @@ -199,7 +199,7 @@ in { # also remove boot.zfs.enableLegacyCrypto zfsLegacyCrypto = common { # comment/uncomment if breaking kernel versions are known - incompatibleKernelVersion = "4.16"; + incompatibleKernelVersion = null; # this package should point to a version / git revision compatible with the latest kernel release version = "2018-02-01"; |