From Saturday, Nov 23rd 7:00 PM CST - Sunday, Nov 24th 7:45 AM CST, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Linux Users

cancel
Showing results for 
Search instead for 
Did you mean: 

Make of nikal kernel module failed (RHEL 7, 3.10.0-957.5.1.el7.x86_64)

I am trying to get NI DAQmx Base 15.0 configured on RHEL 7.6. After initially installing NI DAQmx Base and attempting to run some code, I got the error that libnipalu.so failed to initialize.

 

I ran updateNIDrivers as root, and got an error about an unrecognized kernel. I followed the instructions in the NI-VISA readme to fix this, and I installed NI-KAL 17.5.1. I ran updateNIDrivers again, and got the following readout:

 

Configuring NI-KAL for kernel version 3.10.0-957.5.1.el7.x86_64...
Building module nikal...
nikal:   CC [M]  /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.o
nikal: In file included from ./arch/x86/include/asm/processor.h:18:0,
nikal:                  from ./arch/x86/include/asm/cpufeature.h:7,
nikal:                  from ./arch/x86/include/asm/thread_info.h:22,
nikal:                  from include/linux/thread_info.h:66,
nikal:                  from include/linux/preempt.h:9,
nikal:                  from include/linux/spinlock.h:50,
nikal:                  from include/linux/seqlock.h:35,
nikal:                  from include/linux/time.h:5,
nikal:                  from include/linux/stat.h:18,
nikal:                  from include/linux/module.h:10,
nikal:                  from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:54:
nikal: ./arch/x86/include/asm/pgtable_types.h:136:23: warning: "_PAGE_BIT_SWP_SOFT_DIRTY" is not defined [-Wundef]
nikal:  #if _PAGE_BIT_FILE == _PAGE_BIT_SWP_SOFT_DIRTY
nikal:                        ^
nikal: In file included from ./arch/x86/include/asm/pgtable.h:627:0,
nikal:                  from include/linux/mm.h:63,
nikal:                  from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:61:
nikal: ./arch/x86/include/asm/pgtable_64.h: In function ‘native_ptep_get_and_clear’:
nikal: ./arch/x86/include/asm/pgtable_64.h:86:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
nikal:   pte_t ret = *xp;
nikal:   ^
nikal: ./arch/x86/include/asm/pgtable_64.h: In function ‘native_pmdp_get_and_clear’:
nikal: ./arch/x86/include/asm/pgtable_64.h:100:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
nikal:   pmd_t ret = *xp;
nikal:   ^
nikal: In file included from ./arch/x86/include/asm/pgtable.h:1235:0,
nikal:                  from include/linux/mm.h:63,
nikal:                  from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:61:
nikal: include/asm-generic/pgtable.h: At top level:
nikal: include/asm-generic/pgtable.h:632:19: error: redefinition of ‘pud_trans_huge’
nikal:  static inline int pud_trans_huge(pud_t pud)
nikal:                    ^
nikal: In file included from include/linux/mm.h:63:0,
nikal:                  from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:61:
nikal: ./arch/x86/include/asm/pgtable.h:1106:19: note: previous definition of ‘pud_trans_huge’ was here
nikal:  static inline int pud_trans_huge(pud_t pud)
nikal:                    ^
nikal: In file included from ./arch/x86/include/asm/pgtable.h:1235:0,
nikal:                  from include/linux/mm.h:63,
nikal:                  from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:61:
nikal: include/asm-generic/pgtable.h:659:19: error: redefinition of ‘pud_trans_huge’
nikal:  static inline int pud_trans_huge(pud_t pud)
nikal:                    ^
nikal: include/asm-generic/pgtable.h:632:19: note: previous definition of ‘pud_trans_huge’ was here
nikal:  static inline int pud_trans_huge(pud_t pud)
nikal:                    ^
nikal: In file included from include/linux/mm.h:437:0,
nikal:                  from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:61:
nikal: include/linux/huge_mm.h:369:1: error: expected identifier or ‘(’ before ‘{’ token
nikal:  {
nikal:  ^
nikal: In file included from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:61:0:
nikal: include/linux/mm.h: In function ‘get_user_pages_longterm’:
nikal: include/linux/mm.h:1499:42: error: dereferencing pointer to incomplete type
nikal:   return __get_user_pages(current, current->mm, start, nr_pages,
nikal:                                           ^
nikal: include/linux/mm.h:1500:5: error: ‘gup_flags’ undeclared (first use in this function)
nikal:      gup_flags, pages, vmas, 0);
nikal:      ^
nikal: include/linux/mm.h:1500:5: note: each undeclared identifier is reported only once for each function it appears in
nikal: In file included from include/linux/uaccess.h:6:0,
nikal:                  from include/linux/highmem.h:8,
nikal:                  from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:62:
nikal: include/linux/sched.h: At top level:
nikal: include/linux/sched.h:1835:26: error: field ‘statistics’ has incomplete type
nikal:   struct sched_statistics statistics;
nikal:                           ^
nikal: include/linux/sched.h: In function ‘current_set_polling_and_test’:
nikal: include/linux/sched.h:3088:2: warning: ‘smp_mb__after_clear_bit’ is deprecated (declared at include/linux/bitops.h:51) [-Wdeprecated-declarations]
nikal:   smp_mb__after_clear_bit();
nikal:   ^
nikal: include/linux/sched.h: In function ‘current_clr_polling_and_test’:
nikal: include/linux/sched.h:3106:2: warning: ‘smp_mb__after_clear_bit’ is deprecated (declared at include/linux/bitops.h:51) [-Wdeprecated-declarations]
nikal:   smp_mb__after_clear_bit();
nikal:   ^
nikal: In file included from include/linux/pci.h:32:0,
nikal:                  from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:65:
nikal: include/linux/interrupt.h: In function ‘tasklet_disable_nosync’:
nikal: include/linux/interrupt.h:620:2: warning: ‘smp_mb__after_atomic_inc’ is deprecated (declared at include/linux/atomic.h:345) [-Wdeprecated-declarations]
nikal:   smp_mb__after_atomic_inc();
nikal:   ^
nikal: include/linux/interrupt.h: In function ‘tasklet_enable’:
nikal: include/linux/interrupt.h:632:2: warning: ‘smp_mb__before_atomic_dec’ is deprecated (declared at include/linux/atomic.h:353) [-Wdeprecated-declarations]
nikal:   smp_mb__before_atomic_dec();
nikal:   ^
nikal: include/linux/interrupt.h: In function ‘tasklet_hi_enable’:
nikal: include/linux/interrupt.h:638:2: warning: ‘smp_mb__before_atomic_dec’ is deprecated (declared at include/linux/atomic.h:353) [-Wdeprecated-declarations]
nikal:   smp_mb__before_atomic_dec();
nikal:   ^
nikal: In file included from include/linux/mm.h:437:0,
nikal:                  from /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c:61:
nikal: /var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.c: At top level:
nikal: include/linux/huge_mm.h:368:19: warning: ‘do_huge_pmd_numa_page’ declared ‘static’ but never defined [-Wunused-function]
nikal:  static inline int do_huge_pmd_numa_page(struct vm_fault *vmf, pmd_t orig_pmd);
nikal:                    ^
nikal: make[2]: *** [/var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal/nikal.o] Error 1
nikal: make[1]: *** [_module_/var/lib/nikal/3.10.0-957.5.1.el7.x86_64/nikal] Error 2
nikal: make: *** [nikal.ko] Error 2
nikal: ERROR:  failed to build nikal
nikal: ERROR:  NI-KAL update failed.
nikal: ERROR:  make of nikal kernel module failed, not installing kernel module.
nikal: ERROR:  updateNIDrivers should be called again after fixing the problem.
nikal: ERROR: Update of National Instruments drivers failed.

This version of NI-KAL is supposed to fix the issue where do_munmap was broken, so I'm not sure what else could be going wrong. NI claims that NI DAQmxBase 15.0 is compatible with RHEL 7, but installation has been a very tedious and time-consuming process.

0 Kudos
Message 1 of 1
(3,063 Views)