Driver install issue with kernel 4.9.35

Issue installing 384.81 driver with updated kernel 4.9.35.

The driver install is successful on default Ubuntu kernel (4.4.0-96). The issue occurs with our install of 4.9.35. We need this version or newer kernel to be able to test multiple hardware configurations.

root@ubuntu:~/cuda# uname -a
Linux ubuntu 4.9.35-my-kernel #1 SMP Mon Jul 24 16:20:21 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

The command we are using is a simple “./nvidia-installer” from the extracted NVIDIA-Linux-x86_64-384.81 directory. Is there a driver version or configuration we should try?

From /var/log/nvidia-installer.log (just the beginning with a few errors):

nvidia-installer log file '/var/log/nvidia-installer.log'
creation time: Mon Oct  9 13:46:47 2017
installer version: 384.81

PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin

nvidia-installer command line:
    ./nvidia-installer

Unable to load: nvidia-installer ncurses v6 user interface

Using: nvidia-installer ncurses user interface
-> Detected 1 CPUs online; setting concurrency level to 1.
WARNING: You do not appear to have an NVIDIA GPU supported by the 384.81 NVIDIA Linux graphics driver installed in this system.  For further details, please see the appendix SUPPORTED NVIDIA GRAPHICS CHIPS in the README available on the Linux driver download page at www.nvidia.com.
-> License accepted.
-> Installing NVIDIA driver version 384.81.
-> There appears to already be a driver installed on your system (version: 384.90).  As part of installing this driver (version: 384.81), the existing driver will be uninstalled.  Are you sure you want to continue? (Answer: Continue installation)
-> Would you like to register the kernel module sources with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later. (Answer: No)
-> Performing CC sanity check with CC="/usr/bin/gcc-5".
-> Kernel source path: '/lib/modules/4.9.35-mbx/build'
-> Kernel output path: '/lib/modules/4.9.35-mbx/build'
-> Performing Compiler check.
-> Performing Dom0 check.
-> Performing Xen check.
-> Performing PREEMPT_RT check.
-> Cleaning kernel module build directory.
   executing: 'cd ./kernel; /usr/bin/make -k -j1 clean NV_EXCLUDE_KERNEL_MODULES="" SYSSRC="/lib/modules/4.9.35-mbx/build" SYSOUT="/lib/modules/4.9.35-mbx/build"'...
   rm -f -r conftest
   /usr/bin/make "CC=/usr/bin/gcc-5"  KBUILD_VERBOSE= -C /lib/modules/4.9.35-mbx/build M=/root/cuda/NVIDIA-Linux-x86_64-384.81/kernel ARCH=x86_64 NV_KERNEL_SOURCES=/lib/modules/4.9.35-mbx/build NV_KERNEL_OUTPUT=/lib/modules/4.9.35-mbx/build NV_KERNEL_MODULES="nvidia nvidia-uvm nvidia-modeset nvidia-drm" INSTALL_MOD_DIR=kernel/drivers/video clean
   make[1]: Entering directory '/usr/src/linux-headers-4.9.35-mbx'
   make[1]: Leaving directory '/usr/src/linux-headers-4.9.35-mbx'
-> Building kernel modules
   executing: 'cd ./kernel; /usr/bin/make -k -j1  NV_EXCLUDE_KERNEL_MODULES="" SYSSRC="/lib/modules/4.9.35-mbx/build" SYSOUT="/lib/modules/4.9.35-mbx/build"'...
   /usr/bin/make "CC=/usr/bin/gcc-5"  KBUILD_VERBOSE= -C /lib/modules/4.9.35-mbx/build M=/root/cuda/NVIDIA-Linux-x86_64-384.81/kernel ARCH=x86_64 NV_KERNEL_SOURCES=/lib/modules/4.9.35-mbx/build NV_KERNEL_OUTPUT=/lib/modules/4.9.35-mbx/build NV_KERNEL_MODULES="nvidia nvidia-uvm nvidia-modeset nvidia-drm" INSTALL_MOD_DIR=kernel/drivers/video modules
   make[1]: Entering directory '/usr/src/linux-headers-4.9.35-mbx'
    CONFTEST: INIT_WORK
    CONFTEST: remap_pfn_range
    CONFTEST: hash__remap_4k_pfn
    CONFTEST: follow_pfn
    CONFTEST: vmap
    CONFTEST: set_pages_uc
    CONFTEST: set_memory_uc
    CONFTEST: set_memory_array_uc
    CONFTEST: change_page_attr
    CONFTEST: pci_get_class
    CONFTEST: pci_choose_state
    CONFTEST: vm_insert_page
    CONFTEST: acpi_device_id
    CONFTEST: acquire_console_sem
    CONFTEST: console_lock
    CONFTEST: kmem_cache_create
    CONFTEST: on_each_cpu
    CONFTEST: smp_call_function
    CONFTEST: acpi_evaluate_integer
    CONFTEST: ioremap_cache
    CONFTEST: ioremap_wc
    CONFTEST: acpi_walk_namespace
    CONFTEST: pci_domain_nr
    CONFTEST: pci_dma_mapping_error
    CONFTEST: sg_alloc_table
    CONFTEST: sg_init_table
    CONFTEST: pci_get_domain_bus_and_slot
    CONFTEST: get_num_physpages
    CONFTEST: efi_enabled
    CONFTEST: proc_create_data
    CONFTEST: pde_data
    CONFTEST: proc_remove
    CONFTEST: pm_vt_switch_required
    CONFTEST: xen_ioemu_inject_msi
    CONFTEST: phys_to_dma
    CONFTEST: get_dma_ops
    CONFTEST: write_cr4
    CONFTEST: of_get_property
    CONFTEST: of_find_node_by_phandle
    CONFTEST: of_node_to_nid
    CONFTEST: pnv_pci_get_npu_dev
    CONFTEST: for_each_online_node
    CONFTEST: node_end_pfn
    CONFTEST: pci_bus_address
    CONFTEST: pci_stop_and_remove_bus_device
    CONFTEST: pci_remove_bus_device
    CONFTEST: request_threaded_irq
    CONFTEST: register_cpu_notifier
    CONFTEST: cpuhp_setup_state
    CONFTEST: remap_page_range
    CONFTEST: address_space_init_once
    CONFTEST: kbasename
    CONFTEST: fatal_signal_pending
    CONFTEST: list_cut_position
    CONFTEST: vzalloc
    CONFTEST: wait_on_bit_lock_argument_count
    CONFTEST: bitmap_clear
    CONFTEST: usleep_range
    CONFTEST: radix_tree_empty
    CONFTEST: drm_dev_unref
    CONFTEST: drm_reinit_primary_mode_group
    CONFTEST: drm_atomic_set_mode_for_crtc
    CONFTEST: drm_atomic_clean_old_fb
    CONFTEST: get_user_pages_remote
    CONFTEST: drm_gem_object_lookup
    CONFTEST: drm_atomic_state_free
    CONFTEST: drm_driver_has_gem_prime_res_obj
    CONFTEST: is_export_symbol_gpl_of_node_to_nid
    CONFTEST: i2c_adapter
    CONFTEST: pm_message_t
    CONFTEST: irq_handler_t
    CONFTEST: acpi_device_ops
    CONFTEST: acpi_op_remove
    CONFTEST: outer_flush_all
    CONFTEST: proc_dir_entry
    CONFTEST: scatterlist
    CONFTEST: sg_table
    CONFTEST: file_operations
    CONFTEST: vm_operations_struct
    CONFTEST: atomic_long_type
    CONFTEST: pci_save_state
    CONFTEST: file_inode
    CONFTEST: task_struct
    CONFTEST: kuid_t
    CONFTEST: dma_ops
    CONFTEST: dma_map_ops
    CONFTEST: noncoherent_swiotlb_dma_ops
    CONFTEST: vm_fault_present
    CONFTEST: vm_fault_has_address
    CONFTEST: kernel_write
    CONFTEST: strnstr
    CONFTEST: iterate_dir
    CONFTEST: kstrtoull
    CONFTEST: fault_flags
    CONFTEST: atomic64_type
    CONFTEST: address_space
    CONFTEST: backing_dev_info
    CONFTEST: mm_context_t
    CONFTEST: vm_ops_fault_removed_vma_arg
    CONFTEST: pnv_npu2_init_context
    CONFTEST: drm_bus_present
    CONFTEST: drm_bus_has_bus_type
    CONFTEST: drm_bus_has_get_irq
    CONFTEST: drm_bus_has_get_name
    CONFTEST: drm_driver_has_legacy_dev_list
    CONFTEST: drm_driver_has_set_busid
    CONFTEST: drm_crtc_state_has_connectors_changed
    CONFTEST: drm_init_functions_have_name_arg
    CONFTEST: drm_mode_connector_list_update_has_merge_type_bits_arg
    CONFTEST: drm_helper_mode_fill_fb_struct
    CONFTEST: drm_master_drop_has_from_release_arg
    CONFTEST: drm_mode_config_funcs_has_atomic_state_alloc
    CONFTEST: drm_driver_unload_has_int_return_type
    CONFTEST: dom0_kernel_present
    CONFTEST: nvidia_vgpu_kvm_build
    CONFTEST: nvidia_grid_build
    CONFTEST: drm_available
    CONFTEST: drm_atomic_available
    CONFTEST: drm_atomic_modeset_nonblocking_commit_available
    CONFTEST: is_export_symbol_gpl_refcount_inc
    CONFTEST: is_export_symbol_gpl_refcount_dec_and_test
     CC [M]  /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/nvidia/nv-frontend.o
   In file included from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/conftest.h:5:0,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:17,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/nvidia/nv-frontend.c:13:
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/conftest/functions.h:14:2: error: #error kmem_cache_create() conftest failed!
    #error kmem_cache_create() conftest failed!
     ^
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/conftest/functions.h:15:2: error: #error on_each_cpu() conftest failed!
    #error on_each_cpu() conftest failed!
     ^
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/conftest/functions.h:16:2: error: #error smp_call_function() conftest failed!
    #error smp_call_function() conftest failed!
     ^
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/conftest/functions.h:21:2: error: #error acpi_walk_namespace() conftest failed!
    #error acpi_walk_namespace() conftest failed!
     ^
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/conftest/functions.h:23:2: error: #error pci_dma_mapping_error() conftest failed!
    #error pci_dma_mapping_error() conftest failed!
     ^
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/conftest/functions.h:54:2: error: #error wait_on_bit_lock() conftest failed!
    #error wait_on_bit_lock() conftest failed!
     ^
   In file included from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/conftest.h:7:0,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:17,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/nvidia/nv-frontend.c:13:
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/conftest/macros.h:1:2: error: #error INIT_WORK() conftest failed!
    #error INIT_WORK() conftest failed!
     ^
   In file included from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/nvidia/nv-frontend.c:13:0:
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:153:15: error: conflicting types for ‘kuid_t’
    typedef uid_t kuid_t;
                  ^
   In file included from ./include/linux/sysctl.h:28:0,
                    from ./include/linux/timer.h:258,
                    from ./include/linux/workqueue.h:8,
                    from ./include/linux/srcu.h:34,
                    from ./include/linux/notifier.h:15,
                    from ./include/linux/memory_hotplug.h:6,
                    from ./include/linux/mmzone.h:752,
                    from ./include/linux/gfp.h:5,
                    from ./include/linux/mm.h:9,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-pgprot.h:17,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:20,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/nvidia/nv-frontend.c:13:
   ./include/linux/uidgid.h:22:3: note: previous declaration of ‘kuid_t’ was here
    } kuid_t;
      ^
   In file included from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/nvidia/nv-frontend.c:13:0:
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:155:21: error: conflicting types for ‘__kuid_val’
    static inline uid_t __kuid_val(kuid_t uid)
                        ^
   In file included from ./include/linux/sysctl.h:28:0,
                    from ./include/linux/timer.h:258,
                    from ./include/linux/workqueue.h:8,
                    from ./include/linux/srcu.h:34,
                    from ./include/linux/notifier.h:15,
                    from ./include/linux/memory_hotplug.h:6,
                    from ./include/linux/mmzone.h:752,
                    from ./include/linux/gfp.h:5,
                    from ./include/linux/mm.h:9,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-pgprot.h:17,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:20,
                    from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/nvidia/nv-frontend.c:13:
   ./include/linux/uidgid.h:33:21: note: previous definition of ‘__kuid_val’ was here
    static inline uid_t __kuid_val(kuid_t uid)
                        ^
   In file included from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/nvidia/nv-frontend.c:13:0:
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:168:2: error: #error "struct file_operations compile test likely failed!"
    #error "struct file_operations compile test likely failed!"
     ^
   In file included from /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/nvidia/nv-frontend.c:13:0:
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:343:2: error: #error "NV_PCI_DMA_MAPPING_ERROR() undefined!"
    #error "NV_PCI_DMA_MAPPING_ERROR() undefined!"
     ^
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:347:6: error: "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT" is not defined [-Werror=undef]
    #if (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 6)
         ^
   /root/cuda/NVIDIA-Linux-x86_64-384.81/kernel/common/inc/nv-linux.h:349:8: error: "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT" is not defined [-Werror=undef]
    #elif (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 7)
           ^

Let me know if you need more or have any questions.

It’s a known bug, only 1 cpu + SMP in kernel. It’s fixed in 387.12, for a lower driver you’ll have to compile your own kernel with SMP unset.

Thank you for the response.

After attempting the install with the 387.12 driver, I get similar results.

nvidia-installer log file '/var/log/nvidia-installer.log'
creation time: Tue Oct 10 07:22:20 2017
installer version: 387.12

PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin

nvidia-installer command line:
    ./nvidia-installer

Unable to load: nvidia-installer ncurses v6 user interface

Using: nvidia-installer ncurses user interface
-> Detected 2 CPUs online; setting concurrency level to 2.
WARNING: You do not appear to have an NVIDIA GPU supported by the 387.12 NVIDIA Linux graphics driver installed in this system.  For further details, please see the appendix SUPPORTED NVIDIA GRAPHICS CHIPS in the README available on the Linux driver download page at www.nvidia.com.
-> License accepted.
-> Installing NVIDIA driver version 387.12.
-> There appears to already be a driver installed on your system (version: 387.12).  As part of installing this driver (version: 387.12), the existing driver will be uninstalled.  Are you sure you want to continue? (Answer: Continue installation)
-> Would you like to register the kernel module sources with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later. (Answer: No)
-> Performing CC sanity check with CC="/usr/bin/cc".
-> Kernel source path: '/lib/modules/4.9.35-mbx/build'
-> Kernel output path: '/lib/modules/4.9.35-mbx/build'
-> Performing Compiler check.
-> Performing Dom0 check.
-> Performing Xen check.
-> Performing PREEMPT_RT check.
-> Cleaning kernel module build directory.
   executing: 'cd ./kernel; /usr/bin/make -k -j2 clean NV_EXCLUDE_KERNEL_MODULES="" SYSSRC="/lib/modules/4.9.35-mbx/build" SYSOUT="/lib/modules/4.9.35-mbx/build"'...
   rm -f -r conftest
   make[1]: Entering directory '/usr/src/linux-headers-4.9.35-mbx'
     CLEAN   /root/NVIDIA-Linux-x86_64-387.12/kernel
     CLEAN   /root/NVIDIA-Linux-x86_64-387.12/kernel/.tmp_versions
   make[1]: Leaving directory '/usr/src/linux-headers-4.9.35-mbx'
-> Building kernel modules
   executing: 'cd ./kernel; /usr/bin/make -k -j2  NV_EXCLUDE_KERNEL_MODULES="" SYSSRC="/lib/modules/4.9.35-mbx/build" SYSOUT="/lib/modules/4.9.35-mbx/build"'...
   make[1]: Entering directory '/usr/src/linux-headers-4.9.35-mbx'
     SYMLINK /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-kernel.o
     SYMLINK /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia-modeset/nv-modeset-kernel.o
    CONFTEST: INIT_WORK
    CONFTEST: remap_pfn_range
    CONFTEST: hash__remap_4k_pfn
    CONFTEST: follow_pfn
    CONFTEST: vmap
    CONFTEST: set_pages_uc
    CONFTEST: set_memory_uc
    CONFTEST: set_memory_array_uc
    CONFTEST: change_page_attr
    CONFTEST: pci_get_class
    CONFTEST: pci_choose_state
    CONFTEST: vm_insert_page
    CONFTEST: acpi_device_id
    CONFTEST: acquire_console_sem
    CONFTEST: console_lock
    CONFTEST: kmem_cache_create
    CONFTEST: on_each_cpu
    CONFTEST: smp_call_function
    CONFTEST: acpi_evaluate_integer
    CONFTEST: ioremap_cache
    CONFTEST: ioremap_wc
    CONFTEST: acpi_walk_namespace
    CONFTEST: pci_domain_nr
    CONFTEST: pci_dma_mapping_error
    CONFTEST: sg_alloc_table
    CONFTEST: sg_init_table
    CONFTEST: pci_get_domain_bus_and_slot
    CONFTEST: get_num_physpages
    CONFTEST: efi_enabled
    CONFTEST: proc_create_data
    CONFTEST: pde_data
    CONFTEST: proc_remove
    CONFTEST: pm_vt_switch_required
    CONFTEST: xen_ioemu_inject_msi
    CONFTEST: phys_to_dma
    CONFTEST: get_dma_ops
    CONFTEST: write_cr4
    CONFTEST: of_get_property
    CONFTEST: of_find_node_by_phandle
    CONFTEST: of_node_to_nid
    CONFTEST: pnv_pci_get_npu_dev
    CONFTEST: for_each_online_node
    CONFTEST: node_end_pfn
    CONFTEST: pci_bus_address
    CONFTEST: pci_stop_and_remove_bus_device
    CONFTEST: pci_remove_bus_device
    CONFTEST: request_threaded_irq
    CONFTEST: register_cpu_notifier
    CONFTEST: cpuhp_setup_state
    CONFTEST: remap_page_range
    CONFTEST: address_space_init_once
    CONFTEST: kbasename
    CONFTEST: fatal_signal_pending
    CONFTEST: list_cut_position
    CONFTEST: vzalloc
    CONFTEST: wait_on_bit_lock_argument_count
    CONFTEST: bitmap_clear
    CONFTEST: usleep_range
    CONFTEST: radix_tree_empty
    CONFTEST: drm_dev_unref
    CONFTEST: drm_reinit_primary_mode_group
    CONFTEST: drm_atomic_set_mode_for_crtc
    CONFTEST: drm_atomic_clean_old_fb
    CONFTEST: get_user_pages_remote
    CONFTEST: drm_gem_object_lookup
    CONFTEST: drm_atomic_state_free
    CONFTEST: drm_driver_has_gem_prime_res_obj
    CONFTEST: drm_atomic_helper_disable_all
    CONFTEST: drm_atomic_helper_set_config
    CONFTEST: drm_atomic_helper_connector_dpms
    CONFTEST: is_export_symbol_gpl_of_node_to_nid
    CONFTEST: i2c_adapter
    CONFTEST: pm_message_t
    CONFTEST: irq_handler_t
    CONFTEST: acpi_device_ops
    CONFTEST: acpi_op_remove
    CONFTEST: outer_flush_all
    CONFTEST: proc_dir_entry
    CONFTEST: scatterlist
    CONFTEST: sg_table
    CONFTEST: file_operations
    CONFTEST: vm_operations_struct
    CONFTEST: atomic_long_type
    CONFTEST: pci_save_state
    CONFTEST: file_inode
    CONFTEST: task_struct
    CONFTEST: kuid_t
    CONFTEST: dma_ops
    CONFTEST: dma_map_ops
    CONFTEST: noncoherent_swiotlb_dma_ops
    CONFTEST: vm_fault_present
    CONFTEST: vm_fault_has_address
    CONFTEST: kernel_write
    CONFTEST: strnstr
    CONFTEST: iterate_dir
    CONFTEST: kstrtoull
    CONFTEST: fault_flags
    CONFTEST: atomic64_type
    CONFTEST: address_space
    CONFTEST: backing_dev_info
    CONFTEST: mm_context_t
    CONFTEST: vm_ops_fault_removed_vma_arg
    CONFTEST: pnv_npu2_init_context
    CONFTEST: drm_bus_present
    CONFTEST: drm_bus_has_bus_type
    CONFTEST: drm_bus_has_get_irq
    CONFTEST: drm_bus_has_get_name
    CONFTEST: drm_driver_has_legacy_dev_list
    CONFTEST: drm_driver_has_set_busid
    CONFTEST: drm_crtc_state_has_connectors_changed
    CONFTEST: drm_init_function_args
    CONFTEST: drm_mode_connector_list_update_has_merge_type_bits_arg
    CONFTEST: drm_helper_mode_fill_fb_struct
    CONFTEST: drm_master_drop_has_from_release_arg
    CONFTEST: drm_mode_config_funcs_has_atomic_state_alloc
    CONFTEST: drm_driver_unload_has_int_return_type
    CONFTEST: kref_has_refcount_of_type_refcount_t
    CONFTEST: drm_crtc_helper_funcs_has_atomic_enable
    CONFTEST: dom0_kernel_present
    CONFTEST: nvidia_vgpu_kvm_build
    CONFTEST: nvidia_grid_build
    CONFTEST: drm_available
    CONFTEST: drm_atomic_available
    CONFTEST: drm_atomic_modeset_nonblocking_commit_available
    CONFTEST: is_export_symbol_gpl_refcount_inc
    CONFTEST: is_export_symbol_gpl_refcount_dec_and_test
     CC [M]  /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-frontend.o
     CC [M]  /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-instance.o
   In file included from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/conftest.h:5:0,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-linux.h:17,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-frontend.c:13:
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:14:2: error: #error kmem_cache_create() conftest failed!
    #error kmem_cache_create() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:15:2: error: #error on_each_cpu() conftest failed!
    #error on_each_cpu() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:16:2: error: #error smp_call_function() conftest failed!
    #error smp_call_function() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:21:2: error: #error acpi_walk_namespace() conftest failed!
    #error acpi_walk_namespace() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:23:2: error: #error pci_dma_mapping_error() conftest failed!
    #error pci_dma_mapping_error() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:54:2: error: #error wait_on_bit_lock() conftest failed!
    #error wait_on_bit_lock() conftest failed!
     ^
   In file included from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/conftest.h:7:0,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-linux.h:17,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-frontend.c:13:
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/macros.h:1:2: error: #error INIT_WORK() conftest failed!
    #error INIT_WORK() conftest failed!
     ^
   In file included from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/conftest.h:5:0,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-linux.h:17,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-instance.c:13:
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:14:2: error: #error kmem_cache_create() conftest failed!
    #error kmem_cache_create() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:15:2: error: #error on_each_cpu() conftest failed!
    #error on_each_cpu() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:16:2: error: #error smp_call_function() conftest failed!
    #error smp_call_function() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:21:2: error: #error acpi_walk_namespace() conftest failed!
    #error acpi_walk_namespace() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:23:2: error: #error pci_dma_mapping_error() conftest failed!
    #error pci_dma_mapping_error() conftest failed!
     ^
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/functions.h:54:2: error: #error wait_on_bit_lock() conftest failed!
    #error wait_on_bit_lock() conftest failed!
     ^
   In file included from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/conftest.h:7:0,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-linux.h:17,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-instance.c:13:
   /root/NVIDIA-Linux-x86_64-387.12/kernel/conftest/macros.h:1:2: error: #error INIT_WORK() conftest failed!
    #error INIT_WORK() conftest failed!
     ^
   In file included from /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-instance.c:13:0:
   /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-linux.h:153:15: error: conflicting types for ‘kuid_t’
    typedef uid_t kuid_t;
                  ^
   In file included from ./include/linux/sysctl.h:28:0,
                    from ./include/linux/timer.h:258,
                    from ./include/linux/workqueue.h:8,
                    from ./include/linux/srcu.h:34,
                    from ./include/linux/notifier.h:15,
                    from ./include/linux/memory_hotplug.h:6,
                    from ./include/linux/mmzone.h:752,
                    from ./include/linux/gfp.h:5,
                    from ./include/linux/mm.h:9,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-pgprot.h:17,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-linux.h:20,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-instance.c:13:
   ./include/linux/uidgid.h:22:3: note: previous declaration of ‘kuid_t’ was here
    } kuid_t;
      ^
   In file included from /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-instance.c:13:0:
   /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-linux.h:155:21: error: conflicting types for ‘__kuid_val’
    static inline uid_t __kuid_val(kuid_t uid)
                        ^
   In file included from ./include/linux/sysctl.h:28:0,
                    from ./include/linux/timer.h:258,
                    from ./include/linux/workqueue.h:8,
                    from ./include/linux/srcu.h:34,
                    from ./include/linux/notifier.h:15,
                    from ./include/linux/memory_hotplug.h:6,
                    from ./include/linux/mmzone.h:752,
                    from ./include/linux/gfp.h:5,
                    from ./include/linux/mm.h:9,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-pgprot.h:17,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/common/inc/nv-linux.h:20,
                    from /root/NVIDIA-Linux-x86_64-387.12/kernel/nvidia/nv-instance.c:13:
   ./include/linux/uidgid.h:33:21: note: previous definition of ‘__kuid_val’ was here
    static inline uid_t __kuid_val(kuid_t uid)
                        ^