** Description changed:

+ [Impact]
+ 
  On arm64 with PREEMPTION and BLK_CGROUP enabled,
  preempt_schedule_notrace is being pulled in which is a GPL-only function
  so the DKMS build fails:
  
  DKMS make.log for zfs-0.8.3 for kernel 5.4.0-1015-raspi (aarch64)
  Tue Aug 18 06:30:17 UTC 2020
  ./scripts/make_gitrev.sh
  /bin/bash: ./scripts/make_gitrev.sh: No such file or directory
  make: [Makefile:1512: gitrev] Error 127 (ignored)
  make  all-recursive
  make[1]: Entering directory '/var/lib/dkms/zfs/0.8.3/build'
  Making all in module
  make[2]: Entering directory '/var/lib/dkms/zfs/0.8.3/build/module'
  list='icp lua'; for targetdir in $list; do \
          make -C $targetdir; \
  done
  make[3]: Entering directory '/var/lib/dkms/zfs/0.8.3/build/module/icp'
  mkdir -p api core spi io os algs algs/aes algs/edonr algs/modes algs/sha1 
algs/sha2 algs/skein asm-x86_64 asm-x86_64/aes asm-x86_64/modes asm-x86_64/sha1 
asm-x86_64/sha2 asm-i386 asm-generic
  make[3]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build/module/icp'
  make[3]: Entering directory '/var/lib/dkms/zfs/0.8.3/build/module/lua'
  mkdir -p setjmp
  make[3]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build/module/lua'
  make -C /lib/modules/5.4.0-1015-raspi/build M=`pwd`  CONFIG_ZFS=m modules
  make[3]: Entering directory '/usr/src/linux-headers-5.4.0-1015-raspi'
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/avl/avl.o
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/nvpair/nvpair.o
  
  <SNIP>
  
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/zfs/qat_compress.o
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/zfs/qat_crypt.o
    CC [M]  
/var/lib/dkms/zfs/0.8.3/build/module/zfs/vdev_raidz_math_aarch64_neon.o
    CC [M]  
/var/lib/dkms/zfs/0.8.3/build/module/zfs/vdev_raidz_math_aarch64_neonx2.o
    LD [M]  /var/lib/dkms/zfs/0.8.3/build/module/zfs/zfs.o
    Building modules, stage 2.
    MODPOST 8 modules
  FATAL: modpost: GPL-incompatible module zfs.ko uses GPL-only symbol 
'preempt_schedule_notrace'
  make[4]: *** [scripts/Makefile.modpost:94: __modpost] Error 1
  make[3]: *** [Makefile:1647: modules] Error 2
  make[3]: Leaving directory '/usr/src/linux-headers-5.4.0-1015-raspi'
  make[2]: *** [Makefile:30: modules] Error 2
  make[2]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build/module'
  make[1]: *** [Makefile:807: all-recursive] Error 1
  make[1]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build'
  make: *** [Makefile:676: all] Error 2
+ 
+ [Test Case]
+ 
+ Install zfs-dkms on an arm64 system that has a PREEMPT kernel installed.
+ 
+ [Fix]
+ 
+ Redefine preempt_schedule_notrace() to preempt_schedule() in the ZFS
+ module (only for arm64 and if PREEMPTION and BLK_CGROUP are both
+ enabled). preempt_schedule() is not a GPL symbol.
+ 
+ [Regression Potential]
+ 
+ Per comment in the kernel source, preempt_schedule_notrace() is required
+ when tracing is enabled. As long as tracing is disabled, this 'fix'
+ should not cause any problems. Problems due to this change would
+ manifest themselves as TBD.

** Description changed:

  [Impact]
  
  On arm64 with PREEMPTION and BLK_CGROUP enabled,
  preempt_schedule_notrace is being pulled in which is a GPL-only function
  so the DKMS build fails:
  
  DKMS make.log for zfs-0.8.3 for kernel 5.4.0-1015-raspi (aarch64)
  Tue Aug 18 06:30:17 UTC 2020
  ./scripts/make_gitrev.sh
  /bin/bash: ./scripts/make_gitrev.sh: No such file or directory
  make: [Makefile:1512: gitrev] Error 127 (ignored)
  make  all-recursive
  make[1]: Entering directory '/var/lib/dkms/zfs/0.8.3/build'
  Making all in module
  make[2]: Entering directory '/var/lib/dkms/zfs/0.8.3/build/module'
  list='icp lua'; for targetdir in $list; do \
          make -C $targetdir; \
  done
  make[3]: Entering directory '/var/lib/dkms/zfs/0.8.3/build/module/icp'
  mkdir -p api core spi io os algs algs/aes algs/edonr algs/modes algs/sha1 
algs/sha2 algs/skein asm-x86_64 asm-x86_64/aes asm-x86_64/modes asm-x86_64/sha1 
asm-x86_64/sha2 asm-i386 asm-generic
  make[3]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build/module/icp'
  make[3]: Entering directory '/var/lib/dkms/zfs/0.8.3/build/module/lua'
  mkdir -p setjmp
  make[3]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build/module/lua'
  make -C /lib/modules/5.4.0-1015-raspi/build M=`pwd`  CONFIG_ZFS=m modules
  make[3]: Entering directory '/usr/src/linux-headers-5.4.0-1015-raspi'
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/avl/avl.o
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/nvpair/nvpair.o
  
  <SNIP>
  
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/zfs/qat_compress.o
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/zfs/qat_crypt.o
    CC [M]  
/var/lib/dkms/zfs/0.8.3/build/module/zfs/vdev_raidz_math_aarch64_neon.o
    CC [M]  
/var/lib/dkms/zfs/0.8.3/build/module/zfs/vdev_raidz_math_aarch64_neonx2.o
    LD [M]  /var/lib/dkms/zfs/0.8.3/build/module/zfs/zfs.o
    Building modules, stage 2.
    MODPOST 8 modules
  FATAL: modpost: GPL-incompatible module zfs.ko uses GPL-only symbol 
'preempt_schedule_notrace'
  make[4]: *** [scripts/Makefile.modpost:94: __modpost] Error 1
  make[3]: *** [Makefile:1647: modules] Error 2
  make[3]: Leaving directory '/usr/src/linux-headers-5.4.0-1015-raspi'
  make[2]: *** [Makefile:30: modules] Error 2
  make[2]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build/module'
  make[1]: *** [Makefile:807: all-recursive] Error 1
  make[1]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build'
  make: *** [Makefile:676: all] Error 2
  
+ Note that Ubuntu currently doesn't support/provide a preemptible arm64
+ kernel so this problem hasn't been seen yet.
+ 
  [Test Case]
  
  Install zfs-dkms on an arm64 system that has a PREEMPT kernel installed.
  
  [Fix]
  
  Redefine preempt_schedule_notrace() to preempt_schedule() in the ZFS
  module (only for arm64 and if PREEMPTION and BLK_CGROUP are both
  enabled). preempt_schedule() is not a GPL symbol.
  
  [Regression Potential]
  
  Per comment in the kernel source, preempt_schedule_notrace() is required
  when tracing is enabled. As long as tracing is disabled, this 'fix'
  should not cause any problems. Problems due to this change would
  manifest themselves as TBD.

** Description changed:

  [Impact]
  
  On arm64 with PREEMPTION and BLK_CGROUP enabled,
  preempt_schedule_notrace is being pulled in which is a GPL-only function
  so the DKMS build fails:
  
  DKMS make.log for zfs-0.8.3 for kernel 5.4.0-1015-raspi (aarch64)
  Tue Aug 18 06:30:17 UTC 2020
  ./scripts/make_gitrev.sh
  /bin/bash: ./scripts/make_gitrev.sh: No such file or directory
  make: [Makefile:1512: gitrev] Error 127 (ignored)
  make  all-recursive
  make[1]: Entering directory '/var/lib/dkms/zfs/0.8.3/build'
  Making all in module
  make[2]: Entering directory '/var/lib/dkms/zfs/0.8.3/build/module'
  list='icp lua'; for targetdir in $list; do \
          make -C $targetdir; \
  done
  make[3]: Entering directory '/var/lib/dkms/zfs/0.8.3/build/module/icp'
  mkdir -p api core spi io os algs algs/aes algs/edonr algs/modes algs/sha1 
algs/sha2 algs/skein asm-x86_64 asm-x86_64/aes asm-x86_64/modes asm-x86_64/sha1 
asm-x86_64/sha2 asm-i386 asm-generic
  make[3]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build/module/icp'
  make[3]: Entering directory '/var/lib/dkms/zfs/0.8.3/build/module/lua'
  mkdir -p setjmp
  make[3]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build/module/lua'
  make -C /lib/modules/5.4.0-1015-raspi/build M=`pwd`  CONFIG_ZFS=m modules
  make[3]: Entering directory '/usr/src/linux-headers-5.4.0-1015-raspi'
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/avl/avl.o
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/nvpair/nvpair.o
  
  <SNIP>
  
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/zfs/qat_compress.o
    CC [M]  /var/lib/dkms/zfs/0.8.3/build/module/zfs/qat_crypt.o
    CC [M]  
/var/lib/dkms/zfs/0.8.3/build/module/zfs/vdev_raidz_math_aarch64_neon.o
    CC [M]  
/var/lib/dkms/zfs/0.8.3/build/module/zfs/vdev_raidz_math_aarch64_neonx2.o
    LD [M]  /var/lib/dkms/zfs/0.8.3/build/module/zfs/zfs.o
    Building modules, stage 2.
    MODPOST 8 modules
  FATAL: modpost: GPL-incompatible module zfs.ko uses GPL-only symbol 
'preempt_schedule_notrace'
  make[4]: *** [scripts/Makefile.modpost:94: __modpost] Error 1
  make[3]: *** [Makefile:1647: modules] Error 2
  make[3]: Leaving directory '/usr/src/linux-headers-5.4.0-1015-raspi'
  make[2]: *** [Makefile:30: modules] Error 2
  make[2]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build/module'
  make[1]: *** [Makefile:807: all-recursive] Error 1
  make[1]: Leaving directory '/var/lib/dkms/zfs/0.8.3/build'
  make: *** [Makefile:676: all] Error 2
  
  Note that Ubuntu currently doesn't support/provide a preemptible arm64
- kernel so this problem hasn't been seen yet.
+ kernel so this hasn't been a problem so far.
  
  [Test Case]
  
  Install zfs-dkms on an arm64 system that has a PREEMPT kernel installed.
  
  [Fix]
  
  Redefine preempt_schedule_notrace() to preempt_schedule() in the ZFS
  module (only for arm64 and if PREEMPTION and BLK_CGROUP are both
  enabled). preempt_schedule() is not a GPL symbol.
  
  [Regression Potential]
  
  Per comment in the kernel source, preempt_schedule_notrace() is required
  when tracing is enabled. As long as tracing is disabled, this 'fix'
  should not cause any problems. Problems due to this change would
  manifest themselves as TBD.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1892001

Title:
  zfs-dkms fails to build on arm64 with PREEMPTION and BLK_CGROUP

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/zfs-linux/+bug/1892001/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to