Edit: This post has been made obsolete by release of 381.22 which cleanly works with everything including up to date git master of linux kernel.
Way to go nvidia.
/me claps.
Edit: This post has been made obsolete by release of 381.22 which cleanly works with everything including up to date git master of linux kernel.
Way to go nvidia.
/me claps.
I still need your patch for linux-hardened 4.11 of Arch.
Fedora still requires patching for 4.11
ld -r -o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-modeset/nv-modeset-interface.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-modeset/nvidia-modeset-linux.o
Building modules, stage 2.
MODPOST 4 modules
FATAL: modpost: GPL-incompatible module nvidia-drm.ko uses GPL-only symbol 'refcount_inc'
make[3]: *** [/usr/src/kernels/4.11.0-1.fc26.x86_64/scripts/Makefile.modpost:91: __modpost] Error 1
make[2]: *** [/usr/src/kernels/4.11.0-1.fc26.x86_64/Makefile:1500: modules] Error 2
make[2]: Leaving directory '/usr/src/kernels/4.11.0-1.fc26.x86_64'
make[1]: *** [Makefile:152: sub-make] Error 2
make[1]: Leaving directory '/usr/src/kernels/4.11.0-1.fc26.x86_64'
make: *** [Makefile:81: modules] Error 2
https://pkgs.rpmfusion.org/cgit/nonfree/nvidia-kmod.git/tree/kernel_4.11.patch
.09 patch for 4.11 is still lying around somewhere on this forum, this thread was meant for 4.12 staging but hours after I created the patch .22 came out and it seems to be compiling just fine on my machine in spite of not being relicensed to “Dual GPL/MIT”.
Add problem above, are you sure you haven’t applied older patches? From what I see, I think that my .09 patch was actually wrong and fixed problem that no longer existed (nvidia added their own implementation of refcount_t to work around GPL and make use of atomic_t).
I simply unpacked .22, it compiled without any warnings/errors against current master and afterwards I called it a day. Will investigate what’s up when I fully wake up.
The compile error was on virgin nvidia code
[leigh@localhost Downloads]$ sh NVIDIA-Linux-x86_64-381.22.run -x
Creating directory NVIDIA-Linux-x86_64-381.22
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 381.22..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
[leigh@localhost Downloads]$ cd NVIDIA-Linux-x86_64-381.22/kernel/
[leigh@localhost kernel]$ make -j8
make "CC=cc" KBUILD_OUTPUT=/lib/modules/4.11.0-1.fc26.x86_64/build KBUILD_VERBOSE= -C /lib/modules/4.11.0-1.fc26.x86_64/source M=/home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel ARCH=x86_64 NV_KERNEL_SOURCES=/lib/modules/4.11.0-1.fc26.x86_64/source NV_KERNEL_OUTPUT=/lib/modules/4.11.0-1.fc26.x86_64/build NV_KERNEL_MODULES="nvidia nvidia-uvm nvidia-modeset nvidia-drm" INSTALL_MOD_DIR=kernel/drivers/video modules
make[1]: Entering directory '/usr/src/kernels/4.11.0-1.fc26.x86_64'
make[2]: Entering directory '/usr/src/kernels/4.11.0-1.fc26.x86_64'
SYMLINK /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-kernel.o
SYMLINK /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-modeset/nv-modeset-kernel.o
CONFTEST: INIT_WORK
CONFTEST: follow_pfn
CONFTEST: remap_pfn_range
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: acquire_console_sem
CONFTEST: acpi_device_id
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: drm_driver_has_set_busid
CONFTEST: drm_driver_has_gem_prime_res_obj
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: 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: 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: fault_flags
CONFTEST: atomic64_type
CONFTEST: address_space
CONFTEST: backing_dev_info
CONFTEST: kernel_write
CONFTEST: strnstr
CONFTEST: iterate_dir
CONFTEST: kstrtoull
CONFTEST: mm_context_t
CONFTEST: vm_ops_fault_removed_vma_arg
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_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: drm_available
CONFTEST: nvidia_grid_build
CONFTEST: drm_atomic_available
CONFTEST: drm_atomic_modeset_nonblocking_commit_available
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-frontend.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-instance.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-acpi.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-chrdev.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-cray.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-dma.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-gvi.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-i2c.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-mempool.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-mmap.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-p2p.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-pat.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-procfs.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-usermap.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-vm.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-vtophys.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-interface.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-mlock.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-pci.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-registry.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-usermap.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-modeset-interface.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-pci-table.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-kthread-q.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-kthread-q-selftest.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv_uvm_interface.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nvlink_linux.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_utils.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_common.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_linux.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_page_migration.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_page_migration_stubs.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_page_migration_kepler.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_page_migration_maxwell.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_page_migration_pascal.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/nvstatus.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/nv-kthread-q.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/nv-kthread-q-selftest.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_mmu_mgmt_pascal.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_mmu_mgmt.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_mmu_mgmt_stubs.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_full_fault_buffer.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm_full_fault_buffer_pascal.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/mmu_fmt.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/gmmu_fmt.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_tools.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_global.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_gpu.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_gpu_isr.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_procfs.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_va_space.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_gpu_semaphore.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_mem.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_rm_mem.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_channel.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_lock.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_hal.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_range_tree.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_range_allocator.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_va_range.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_va_block.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_range_group.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_gpu_page_fault.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_perf_events.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_perf_module.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_mmu.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_pte_batch.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_tlb_batch.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_push.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_pushbuffer.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_thread_context.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_tracker.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_kepler.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_kepler_ce.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_kepler_host.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_kepler_mmu.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_maxwell.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_maxwell_host.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_pascal.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_pascal_ce.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_pascal_host.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_pascal_mmu.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_pascal_fault_buffer.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_policy.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_perf_utils.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_kvmalloc.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_pmm_gpu.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_migrate.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_map_external.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_user_channel.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_hmm.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_perf_heuristics.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_perf_thrashing.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_perf_prefetch.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_test_rng.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_range_tree_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_range_allocator_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_gpu_semaphore_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_mem_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_rm_mem_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_page_tree_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_tracker_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_push_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_channel_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_ce_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_lock_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_perf_utils_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_kvmalloc_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_pmm_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_perf_module_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_perf_events_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_get_rm_ptes_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_fault_buffer_flush_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_mmu_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_peer_identity_mappings_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_va_block_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm/uvm8_range_group_tree_test.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-modeset/nvidia-modeset-linux.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-drv.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-utils.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-crtc.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-encoder.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-connector.o
/home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-drv.c: In function ‘nvidia_drm_get_client_capability’:
/home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-drv.c:557:31: warning: unused variable ‘nv_dev’ [-Wunused-variable]
struct nvidia_drm_device *nv_dev = dev->dev_private;
^~~~~~
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-gem.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-fb.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-modeset.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-fence.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-linux.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nvidia-drm-helper.o
CC [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm/nv-pci-table.o
ld -r -o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-interface.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-frontend.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-instance.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-acpi.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-chrdev.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-cray.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-dma.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-gvi.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-i2c.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-mempool.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-mmap.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-p2p.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-pat.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-procfs.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-usermap.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-vm.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-vtophys.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-interface.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-mlock.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-pci.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-registry.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/os-usermap.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-modeset-interface.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-pci-table.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-kthread-q.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv-kthread-q-selftest.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nv_uvm_interface.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia/nvlink_linux.o
ld -r -o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-modeset/nv-modeset-interface.o /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-modeset/nvidia-modeset-linux.o
LD [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia.o
LD [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-uvm.o
LD [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-modeset.o
LD [M] /home/leigh/Downloads/NVIDIA-Linux-x86_64-381.22/kernel/nvidia-drm.o
Building modules, stage 2.
MODPOST 4 modules
FATAL: modpost: GPL-incompatible module nvidia-drm.ko uses GPL-only symbol 'refcount_inc'
make[3]: *** [/usr/src/kernels/4.11.0-1.fc26.x86_64/scripts/Makefile.modpost:91: __modpost] Error 1
make[2]: *** [/usr/src/kernels/4.11.0-1.fc26.x86_64/Makefile:1500: modules] Error 2
make[2]: Leaving directory '/usr/src/kernels/4.11.0-1.fc26.x86_64'
make[1]: *** [Makefile:152: sub-make] Error 2
make[1]: Leaving directory '/usr/src/kernels/4.11.0-1.fc26.x86_64'
make: *** [Makefile:81: modules] Error 2
I get exact the same without patching on debian sid with kernel 4.11.
They patched all the API breakages except the one involving GPL-licensed symbols in 4.11, fortunatedly 4.12 window seems to have reverted the symbol so that it’s no longer GPL licensed.
For the time being you are kinda stuck with using shady relicensing patch or using latest git master of linuses tree.
Simple one liner is floating around on these forums, so my job here is “done” since I only really care about linuses master tree and linux-next branches (e.g. I have no intention to backport patches for older kernels or drivers, sorry).
Well, for Kernel v4.12 series it is fixed by this patch: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/patch/?id=d557d1b58b3546bab2c5bc2d624c5709840e6b10 It should apply just fine on the Kernel v4.11 series.