Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

6.2rc1 dkms is failing to build #429

Closed
ptr1337 opened this issue Dec 27, 2022 · 9 comments
Closed

6.2rc1 dkms is failing to build #429

ptr1337 opened this issue Dec 27, 2022 · 9 comments

Comments

@ptr1337
Copy link

ptr1337 commented Dec 27, 2022

NVIDIA Open GPU Kernel Modules Version

525.60.11

Operating System and Version

CachyOS (archlinux based)

Kernel Release

6.2.rc1

Build Command

Closed and open drivers are failing when building dkms.

Terminal output/Build Log

  SYMLINK /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kernel.o
  SYMLINK /var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-modeset-kernel.o
 CONFTEST: hash__remap_4k_pfn
 CONFTEST: set_pages_uc
 CONFTEST: list_is_first
 CONFTEST: set_memory_uc
 CONFTEST: set_memory_array_uc
 CONFTEST: set_pages_array_uc
 CONFTEST: ioremap_cache
 CONFTEST: ioremap_wc
 CONFTEST: pci_get_domain_bus_and_slot
 CONFTEST: get_num_physpages
 CONFTEST: pde_data
 CONFTEST: xen_ioemu_inject_msi
 CONFTEST: phys_to_dma
 CONFTEST: get_dma_ops
 CONFTEST: dma_map_page_attrs
 CONFTEST: dma_attr_macros
 CONFTEST: write_cr4
 CONFTEST: of_find_node_by_phandle
 CONFTEST: of_node_to_nid
 CONFTEST: pnv_pci_get_npu_dev
 CONFTEST: of_get_ibm_chip_id
 CONFTEST: pci_bus_address
 CONFTEST: pci_stop_and_remove_bus_device
 CONFTEST: register_cpu_notifier
 CONFTEST: dma_map_resource
 CONFTEST: cpuhp_setup_state
 CONFTEST: get_backlight_device_by_name
 CONFTEST: timer_setup
 CONFTEST: pci_enable_msix_range
 CONFTEST: kernel_read_has_pointer_pos_arg
 CONFTEST: kernel_write_has_pointer_pos_arg
 CONFTEST: dma_direct_map_resource
 CONFTEST: tegra_get_platform
 CONFTEST: tegra_bpmp_send_receive
 CONFTEST: flush_cache_all
 CONFTEST: vmf_insert_pfn
 CONFTEST: jiffies_to_timespec
 CONFTEST: ktime_get_raw_ts64
 CONFTEST: ktime_get_real_ts64
 CONFTEST: full_name_hash
 CONFTEST: pci_enable_atomic_ops_to_root
 CONFTEST: vga_tryget
 CONFTEST: pgprot_decrypted
 CONFTEST: cc_mkdec
 CONFTEST: seq_read_iter
 CONFTEST: unsafe_follow_pfn
 CONFTEST: drm_gem_object_get
 CONFTEST: add_memory_driver_managed
 CONFTEST: drm_gem_object_put_unlocked
 CONFTEST: device_property_read_u64
 CONFTEST: devm_of_platform_populate
 CONFTEST: of_dma_configure
 CONFTEST: of_property_count_elems_of_size
 CONFTEST: of_property_read_variable_u8_array
 CONFTEST: i2c_new_client_device
 CONFTEST: i2c_unregister_device
 CONFTEST: of_get_named_gpio
 CONFTEST: devm_gpio_request_one
 CONFTEST: gpio_direction_input
 CONFTEST: gpio_direction_output
 CONFTEST: gpio_get_value
 CONFTEST: gpio_set_value
 CONFTEST: gpio_to_irq
 CONFTEST: icc_get
 CONFTEST: icc_put
 CONFTEST: icc_set_bw
 CONFTEST: dma_buf_export_args
 CONFTEST: dma_buf_ops_has_kmap
 CONFTEST: dma_buf_ops_has_kmap_atomic
 CONFTEST: dma_buf_ops_has_map
 CONFTEST: dma_buf_ops_has_map_atomic
 CONFTEST: dma_buf_has_dynamic_attachment
 CONFTEST: dma_buf_attachment_has_peer2peer
 CONFTEST: dma_set_mask_and_coherent
 CONFTEST: devm_clk_bulk_get_all
 CONFTEST: get_task_ioprio
 CONFTEST: mdev_set_iommu_device
 CONFTEST: wait_on_bit_lock_argument_count
 CONFTEST: radix_tree_empty
 CONFTEST: radix_tree_replace_slot
 CONFTEST: pnv_npu2_init_context
 CONFTEST: cpumask_of_node
 CONFTEST: ioasid_get
 CONFTEST: migrate_vma_setup
 CONFTEST: mmget_not_zero
 CONFTEST: acpi_video_backlight_use_native
 CONFTEST: drm_dev_unref
 CONFTEST: drm_reinit_primary_mode_group
 CONFTEST: get_user_pages
 CONFTEST: get_user_pages_remote
 CONFTEST: pin_user_pages_remote
 CONFTEST: pin_user_pages
 CONFTEST: drm_gem_object_lookup
 CONFTEST: drm_atomic_state_ref_counting
 CONFTEST: drm_driver_has_gem_prime_res_obj
 CONFTEST: drm_atomic_helper_connector_dpms
 CONFTEST: drm_connector_funcs_have_mode_in_name
 CONFTEST: drm_connector_has_vrr_capable_property
 CONFTEST: drm_framebuffer_get
 CONFTEST: drm_dev_put
 CONFTEST: drm_format_num_planes
 CONFTEST: drm_connector_for_each_possible_encoder
 CONFTEST: drm_rotation_available
 CONFTEST: drm_vma_offset_exact_lookup_locked
 CONFTEST: nvhost_dma_fence_unpack
 CONFTEST: is_export_symbol_gpl_of_node_to_nid
 CONFTEST: is_export_symbol_gpl_sme_active
 CONFTEST: is_export_symbol_present_swiotlb_map_sg_attrs
 CONFTEST: is_export_symbol_present_swiotlb_dma_ops
 CONFTEST: is_export_symbol_present___close_fd
 CONFTEST: is_export_symbol_present_close_fd
 CONFTEST: is_export_symbol_present_get_unused_fd_flags
 CONFTEST: is_export_symbol_present_get_unused_fd
 CONFTEST: is_export_symbol_present_nvhost_get_default_device
 CONFTEST: is_export_symbol_present_nvhost_syncpt_unit_interface_get_byte_offset
 CONFTEST: is_export_symbol_present_nvhost_syncpt_unit_interface_get_aperture
 CONFTEST: is_export_symbol_present_tegra_dce_register_ipc_client
 CONFTEST: is_export_symbol_present_tegra_dce_unregister_ipc_client
 CONFTEST: is_export_symbol_present_tegra_dce_client_ipc_send_recv
 CONFTEST: is_export_symbol_present_dram_clk_to_mc_clk
 CONFTEST: is_export_symbol_present_get_dram_num_channels
 CONFTEST: is_export_symbol_present_tegra_dram_types
 CONFTEST: is_export_symbol_present_pxm_to_node
 CONFTEST: is_export_symbol_present_screen_info
 CONFTEST: is_export_symbol_present_int_active_memcg
 CONFTEST: dma_ops
 CONFTEST: swiotlb_dma_ops
 CONFTEST: noncoherent_swiotlb_dma_ops
 CONFTEST: vm_fault_has_address
 CONFTEST: vm_insert_pfn_prot
 CONFTEST: vmf_insert_pfn_prot
 CONFTEST: vm_ops_fault_removed_vma_arg
 CONFTEST: vmbus_channel_has_ringbuffer_page
 CONFTEST: kmem_cache_has_kobj_remove_work
 CONFTEST: sysfs_slab_unlink
 CONFTEST: proc_ops
 CONFTEST: timespec64
 CONFTEST: vmalloc_has_pgprot_t_arg
 CONFTEST: mm_has_mmap_lock
 CONFTEST: pci_channel_state
 CONFTEST: pci_dev_has_ats_enabled
 CONFTEST: remove_memory_has_nid_arg
 CONFTEST: add_memory_driver_managed_has_mhp_flags_arg
 CONFTEST: num_registered_fb
 CONFTEST: pci_driver_has_driver_managed_dma
 CONFTEST: backing_dev_info
 CONFTEST: mm_context_t
 CONFTEST: vm_fault_t
 CONFTEST: mmu_notifier_ops_invalidate_range
 CONFTEST: migrate_vma_added_flags
 CONFTEST: make_device_exclusive_range
 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_device_list
 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_helper_mode_fill_fb_struct
 CONFTEST: drm_master_drop_has_from_release_arg
 CONFTEST: drm_driver_unload_has_int_return_type
 CONFTEST: drm_atomic_helper_plane_destroy_state_has_plane_arg
 CONFTEST: drm_atomic_helper_crtc_destroy_state_has_crtc_arg
 CONFTEST: drm_mode_object_find_has_file_priv_arg
 CONFTEST: dma_buf_owner
 CONFTEST: drm_connector_list_iter
 CONFTEST: drm_atomic_helper_swap_state_has_stall_arg
 CONFTEST: drm_driver_prime_flag_present
 CONFTEST: drm_gem_object_has_resv
 CONFTEST: drm_crtc_state_has_async_flip
 CONFTEST: drm_crtc_state_has_pageflip_flags
 CONFTEST: drm_crtc_state_has_vrr_enabled
 CONFTEST: drm_format_modifiers_present
 CONFTEST: drm_vma_node_is_allowed_has_tag_arg
 CONFTEST: drm_vma_offset_node_has_readonly
 CONFTEST: drm_display_mode_has_vrefresh
 CONFTEST: drm_driver_master_set_has_int_return_type
 CONFTEST: drm_driver_has_gem_free_object
 CONFTEST: drm_prime_pages_to_sg_has_drm_device_arg
 CONFTEST: drm_driver_has_gem_prime_callbacks
 CONFTEST: drm_crtc_atomic_check_has_atomic_state_arg
 CONFTEST: drm_gem_object_vmap_has_map_arg
 CONFTEST: drm_plane_atomic_check_has_atomic_state_arg
 CONFTEST: drm_device_has_pdev
 CONFTEST: drm_crtc_state_has_no_vblank
 CONFTEST: drm_mode_config_has_allow_fb_modifiers
 CONFTEST: drm_has_hdr_output_metadata
 CONFTEST: dma_resv_add_fence
 CONFTEST: dma_resv_reserve_fences
 CONFTEST: reservation_object_reserve_shared_has_num_fences_arg
 CONFTEST: dom0_kernel_present
 CONFTEST: nvidia_grid_build
 CONFTEST: nvidia_vgpu_kvm_build
 CONFTEST: nvidia_grid_csp_build
 CONFTEST: pm_runtime_available
 CONFTEST: pci_class_multimedia_hd_audio
 CONFTEST: drm_available
 CONFTEST: drm_atomic_available
 CONFTEST: vfio_pci_core_available
 CONFTEST: is_export_symbol_gpl_refcount_inc
 CONFTEST: is_export_symbol_gpl_refcount_dec_and_test
 CONFTEST: drm_alpha_blending_available
 CONFTEST: ib_peer_memory_symbols
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-pci.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-dmabuf.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-nano-timer.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-acpi.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-cray.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-dma.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-i2c.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-mmap.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-p2p.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-pat.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-procfs.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-vm.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-usermap.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-vtophys.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-interface.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-mlock.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-pci.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-registry.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-usermap.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-modeset-interface.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-pci-table.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kthread-q.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-memdbg.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kthread-q.c:185:73: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
        thread[i] = kthread_create_on_node(threadfn, q, preferred_node, q_name);
                                                                        ^~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kthread-q.c:185:73: note: treat the string as an argument to avoid this
        thread[i] = kthread_create_on_node(threadfn, q, preferred_node, q_name);
                                                                        ^
                                                                        "%s", 
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kthread-q.c:204:16: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
        if ((i == (attempts - 1)))
             ~~^~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kthread-q.c:204:16: note: remove extraneous parentheses around the comparison to silence this warning
        if ((i == (attempts - 1)))
            ~  ^                ~
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kthread-q.c:204:16: note: use '=' to turn this equality comparison into an assignment
        if ((i == (attempts - 1)))
               ^~
               =
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kthread-q.c:229:54: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
        q->q_kthread = kthread_create(_main_loop, q, q_name);
                                                     ^~~~~~
./include/linux/kthread.h:28:55: note: expanded from macro 'kthread_create'
        kthread_create_on_node(threadfn, data, NUMA_NO_NODE, namefmt, ##arg)
                                                             ^~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kthread-q.c:229:54: note: treat the string as an argument to avoid this
        q->q_kthread = kthread_create(_main_loop, q, q_name);
                                                     ^
                                                     "%s", 
./include/linux/kthread.h:28:55: note: expanded from macro 'kthread_create'
        kthread_create_on_node(threadfn, data, NUMA_NO_NODE, namefmt, ##arg)
                                                             ^
3 warnings generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-ibmnpu.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-report-err.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia/os-interface.c:1412:11: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
    panic(bugCodeStr);
          ^~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia/os-interface.c:1412:11: note: treat the string as an argument to avoid this
    panic(bugCodeStr);
          ^
          "%s", 
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-mmap.c:356:9: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough]
        default:
        ^
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-mmap.c:356:9: note: insert '__attribute__((fallthrough));' to silence this warning
        default:
        ^
        __attribute__((fallthrough)); 
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-mmap.c:356:9: note: insert 'break;' to avoid fall-through
        default:
        ^
        break; 
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-rsync.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-msi.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-caps.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia/nv.c:266:19: warning: variable 'hi_val' set but not used [-Wunused-but-set-variable]
    NvU32 lo_val, hi_val;
                  ^
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-frontend.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv_uvm_interface.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nvlink_linux.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/linux_nvswitch.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/nvlink_caps.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/procfs_nvswitch.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia/i2c_nvswitch.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_hopper.o
1 warning generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_hopper_ce.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_hopper_fault_buffer.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_hopper_host.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_hopper_mmu.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_ada.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_common.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_linux.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nvstatus.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nvCpuUuid.o
1 warning generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nv-kthread-q.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nv-kthread-q-selftest.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm.o
1 warning generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_tools.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_global.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_isr.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nv-kthread-q.c:185:73: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
        thread[i] = kthread_create_on_node(threadfn, q, preferred_node, q_name);
                                                                        ^~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nv-kthread-q.c:185:73: note: treat the string as an argument to avoid this
        thread[i] = kthread_create_on_node(threadfn, q, preferred_node, q_name);
                                                                        ^
                                                                        "%s", 
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nv-kthread-q.c:204:16: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
        if ((i == (attempts - 1)))
             ~~^~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nv-kthread-q.c:204:16: note: remove extraneous parentheses around the comparison to silence this warning
        if ((i == (attempts - 1)))
            ~  ^                ~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nv-kthread-q.c:204:16: note: use '=' to turn this equality comparison into an assignment
        if ((i == (attempts - 1)))
               ^~
               =
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nv-kthread-q.c:229:54: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
        q->q_kthread = kthread_create(_main_loop, q, q_name);
                                                     ^~~~~~
./include/linux/kthread.h:28:55: note: expanded from macro 'kthread_create'
        kthread_create_on_node(threadfn, data, NUMA_NO_NODE, namefmt, ##arg)
                                                             ^~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/nv-kthread-q.c:229:54: note: treat the string as an argument to avoid this
        q->q_kthread = kthread_create(_main_loop, q, q_name);
                                                     ^
                                                     "%s", 
./include/linux/kthread.h:28:55: note: expanded from macro 'kthread_create'
        kthread_create_on_node(threadfn, data, NUMA_NO_NODE, namefmt, ##arg)
                                                             ^
3 warnings generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_procfs.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_va_space.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia/linux_nvswitch.c:2527:57: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
            nvswitch_os_print(NVSWITCH_DBG_LEVEL_ERROR, fmt_printk);
                                                        ^~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia/linux_nvswitch.c:2527:57: note: treat the string as an argument to avoid this
            nvswitch_os_print(NVSWITCH_DBG_LEVEL_ERROR, fmt_printk);
                                                        ^
                                                        "%s", 
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_va_space_mm.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_semaphore.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_mem.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_rm_mem.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_channel.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_lock.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_hal.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_range_tree.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_rb_tree.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_range_allocator.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_va_range.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_va_policy.o
1 warning generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_va_block.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_range_group.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_replayable_faults.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_non_replayable_faults.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_access_counters.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_perf_events.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_perf_module.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_mmu.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pte_batch.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_tlb_batch.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pushbuffer.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_thread_context.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_tracker.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_maxwell.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_maxwell_host.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_maxwell_ce.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_maxwell_mmu.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_maxwell_fault_buffer.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_va_block.c:1815:31: warning: variable 'gpu_state' set but not used [-Wunused-but-set-variable]
    uvm_va_block_gpu_state_t *gpu_state;
                              ^
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_non_replayable_faults.c:185:31: warning: variable 'fault_cache' set but not used [-Wunused-but-set-variable]
    uvm_fault_buffer_entry_t *fault_cache;
                              ^
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_replayable_faults.c:1069:71: warning: implicit conversion from enumeration type 'uvm_fault_access_type_t' to different enumeration type 'uvm_fault_type_t' [-Wenum-conversion]
                                                         fault_entry->fault_access_type,
                                                         ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_replayable_faults.c:1095:66: warning: implicit conversion from enumeration type 'uvm_fault_access_type_t' to different enumeration type 'uvm_fault_type_t' [-Wenum-conversion]
                                                                 UVM_FAULT_ACCESS_TYPE_READ,
                                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_non_replayable_faults.c:372:66: warning: implicit conversion from enumeration type 'uvm_fault_access_type_t' to different enumeration type 'uvm_fault_type_t' [-Wenum-conversion]
                                                    fault_entry->fault_access_type,
                                                    ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_maxwell_access_counter_buffer.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pascal.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_va_block.c:9844:60: warning: implicit conversion from enumeration type 'uvm_fault_type_t' to different enumeration type 'uvm_fault_access_type_t' [-Wenum-conversion]
    uvm_prot_t access_prot = uvm_fault_access_type_to_prot(access_type);
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_va_block.c:9978:53: warning: implicit conversion from enumeration type 'uvm_fault_access_type_t' to different enumeration type 'uvm_fault_type_t' [-Wenum-conversion]
                                                    fault_access_type,
                                                    ^~~~~~~~~~~~~~~~~
2 warnings generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pascal_ce.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pascal_host.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pascal_mmu.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pascal_fault_buffer.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_volta_host.o
2 warnings generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_volta_mmu.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_volta.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_volta_fault_buffer.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_volta_access_counter_buffer.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_mmu.c:127:33: warning: variable 'va_space' is uninitialized when used here [-Wuninitialized]
        uvm_va_space_mm_release(va_space);
                                ^~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_mmu.c:105:29: note: initialize the variable 'va_space' to silence this warning
    uvm_va_space_t *va_space;
                            ^
                             = NULL
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_turing.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_turing_access_counter_buffer.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_turing_fault_buffer.o
1 warning generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_turing_mmu.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_turing_host.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_ampere.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_ampere_ce.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_ampere_host.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_ampere_mmu.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_policy.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_perf_utils.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_kvmalloc.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pmm_sysmem.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pmm_gpu.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pascal_fault_buffer.c:204:15: warning: variable 'status' set but not used [-Wunused-but-set-variable]
    NV_STATUS status;
              ^
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_migrate.o
1 warning generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_populate_pageable.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_migrate_pageable.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_map_external.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_volta_fault_buffer.c:245:15: warning: variable 'status' set but not used [-Wunused-but-set-variable]
    NV_STATUS status;
              ^
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_user_channel.o
1 warning generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_hmm.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_perf_heuristics.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_perf_thrashing.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_perf_prefetch.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_ats.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_ats_ibm.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_ats_faults.o
3 warnings generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_test_rng.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_range_tree_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_range_allocator_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_gpu_semaphore_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_hmm_sanity_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_mem_test.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pmm_sysmem.c:120:17: warning: expression result unused; should this cast be to 'void'? [-Wunused-value]
                (void *)radix_tree_delete(&sysmem_mappings->reverse_map_tree, remove_key);
                ^     ~
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_rm_mem_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_page_tree_test.o
1 warning generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_tracker_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push_test.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_map_external.c:104:59: warning: implicit conversion from enumeration type 'const UvmGpuCachingType' to different enumeration type 'UvmRmGpuCachingType' [-Wenum-conversion]
    pte_buffer->mapping_info.cachingType = map_rm_params->caching_type;
                                         ~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_map_external.c:105:59: warning: implicit conversion from enumeration type 'const UvmGpuMappingType' to different enumeration type 'UvmRmGpuMappingType' [-Wenum-conversion]
    pte_buffer->mapping_info.mappingType = map_rm_params->mapping_type;
                                         ~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_map_external.c:106:58: warning: implicit conversion from enumeration type 'const UvmGpuFormatType' to different enumeration type 'UvmRmGpuFormatType' [-Wenum-conversion]
    pte_buffer->mapping_info.formatType = map_rm_params->format_type;
                                        ~ ~~~~~~~~~~~~~~~^~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_map_external.c:107:59: warning: implicit conversion from enumeration type 'const UvmGpuFormatElementBits' to different enumeration type 'UvmRmGpuFormatElementBits' [-Wenum-conversion]
    pte_buffer->mapping_info.elementBits = map_rm_params->element_bits;
                                         ~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_map_external.c:108:63: warning: implicit conversion from enumeration type 'const UvmGpuCompressionType' to different enumeration type 'UvmRmGpuCompressionType' [-Wenum-conversion]
    pte_buffer->mapping_info.compressionType = map_rm_params->compression_type;
                                             ~ ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_channel_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_ce_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_host_test.o
5 warnings generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_lock_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_perf_utils_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_kvmalloc_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pmm_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_pmm_sysmem_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_perf_events_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_perf_module_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_get_rm_ptes_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_fault_buffer_flush_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_peer_identity_mappings_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_va_block_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_range_group_tree_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_thread_context_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_rb_tree_test.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nvidia-modeset-linux.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-kthread-q.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push_test.c:706:18: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
        status = uvm_push_begin(gpu->channel_manager, type, &push, uvm_channel_type_to_string(type));
                 ^                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push.h:219:43: note: expanded from macro 'uvm_push_begin'
        __FILE__, __FUNCTION__, __LINE__, (format), ##__VA_ARGS__)
                                          ^~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push_test.c:706:18: note: treat the string as an argument to avoid this
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push.h:219:43: note: expanded from macro 'uvm_push_begin'
        __FILE__, __FUNCTION__, __LINE__, (format), ##__VA_ARGS__)
                                          ^
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push_test.c:721:18: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
        status = uvm_push_begin_gpu_to_gpu(gpu->channel_manager,
                 ^
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push.h:240:43: note: expanded from macro 'uvm_push_begin_gpu_to_gpu'
        __FILE__, __FUNCTION__, __LINE__, (format), ##__VA_ARGS__)
                                          ^~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push_test.c:721:18: note: treat the string as an argument to avoid this
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_push.h:240:43: note: expanded from macro 'uvm_push_begin_gpu_to_gpu'
        __FILE__, __FUNCTION__, __LINE__, (format), ##__VA_ARGS__)
                                          ^
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-drv.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_channel_test.c:156:15: warning: unused variable 'status' [-Wunused-variable]
    NV_STATUS status;
              ^
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-utils.o
2 warnings generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-crtc.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-encoder.o
1 warning generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-connector.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-gem.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-fb.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-modeset.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-kthread-q.c:185:73: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
        thread[i] = kthread_create_on_node(threadfn, q, preferred_node, q_name);
                                                                        ^~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-kthread-q.c:185:73: note: treat the string as an argument to avoid this
        thread[i] = kthread_create_on_node(threadfn, q, preferred_node, q_name);
                                                                        ^
                                                                        "%s", 
/var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-kthread-q.c:204:16: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
        if ((i == (attempts - 1)))
             ~~^~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-kthread-q.c:204:16: note: remove extraneous parentheses around the comparison to silence this warning
        if ((i == (attempts - 1)))
            ~  ^                ~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-kthread-q.c:204:16: note: use '=' to turn this equality comparison into an assignment
        if ((i == (attempts - 1)))
               ^~
               =
/var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-kthread-q.c:229:54: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
        q->q_kthread = kthread_create(_main_loop, q, q_name);
                                                     ^~~~~~
./include/linux/kthread.h:28:55: note: expanded from macro 'kthread_create'
        kthread_create_on_node(threadfn, data, NUMA_NO_NODE, namefmt, ##arg)
                                                             ^~~~~~~
/var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-kthread-q.c:229:54: note: treat the string as an argument to avoid this
        q->q_kthread = kthread_create(_main_loop, q, q_name);
                                                     ^
                                                     "%s", 
./include/linux/kthread.h:28:55: note: expanded from macro 'kthread_create'
        kthread_create_on_node(threadfn, data, NUMA_NO_NODE, namefmt, ##arg)
                                                             ^
3 warnings generated.
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-prime-fence.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-linux.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-helper.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nv-pci-table.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-gem-nvkms-memory.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-gem-user-memory.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-gem-dma-buf.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-format.o
  CC [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-peermem/nvidia-peermem.o
  LD [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia.o
ld.lld -r -o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-interface.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-pci.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-dmabuf.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-nano-timer.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-acpi.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-cray.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-dma.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-i2c.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-mmap.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-p2p.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-pat.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-procfs.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-usermap.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-vm.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-vtophys.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-interface.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-mlock.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-pci.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-registry.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/os-usermap.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-modeset-interface.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-pci-table.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-kthread-q.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-memdbg.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-ibmnpu.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-report-err.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-rsync.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-msi.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-caps.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv-frontend.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nv_uvm_interface.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nvlink_linux.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/nvlink_caps.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/linux_nvswitch.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/procfs_nvswitch.o /var/lib/dkms/nvidia/525.60.11/build/nvidia/i2c_nvswitch.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_rb_tree_test.c:361:13: warning: unannotated fall-through between switch labels [-Wimplicit-fallthrough]
            default:
            ^
/var/lib/dkms/nvidia/525.60.11/build/nvidia-uvm/uvm_rb_tree_test.c:361:13: note: insert 'break;' to avoid fall-through
            default:
            ^
            break; 
ld.lld -r -o /var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-modeset-interface.o /var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nvidia-modeset-linux.o /var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset/nv-kthread-q.o
  LD [M]  /var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset.o
/var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-drv.c:262:22: error: no member named 'fb_base' in 'struct drm_mode_config'
    dev->mode_config.fb_base = 0;
    ~~~~~~~~~~~~~~~~ ^
1 error generated.
make[2]: *** [scripts/Makefile.build:252: /var/lib/dkms/nvidia/525.60.11/build/nvidia-drm/nvidia-drm-drv.o] Error 1
make[2]: *** Waiting for unfinished jobs....
1 warning generated.

More Info

The 6.2 rc1 Kernel got released on sunday and nvidia-dkms is not building anymore correctly.
Also there are many warnings about the rethunks:

/var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset.o: warning: objtool: _nv000094kms+0x4f: 'naked' return found in RETHUNK build

Related commit from kernel:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/include/drm/drm_mode_config.h?id=7c99616e3fe7f35fe25bf6f5797267da29b4751e
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/gpu/drm/drm_edid.c?id=90b575f52c6ab35979968e2e4d9cbd9f1eb3901c

@loqs
Copy link

loqs commented Dec 29, 2022

/var/lib/dkms/nvidia/525.60.11/build/nvidia-modeset.o: warning: objtool: _nv000094kms+0x4f: 'naked' return found in RETHUNK build

Have you tried disabling asynchronous-unwind-tables in src/nvidia-modeset/Makefile? The patch below also address SLS and RETHUNK warnings.

diff --git a/src/nvidia-modeset/Makefile b/src/nvidia-modeset/Makefile
index 9ef3c62..a6e3dc7 100644
--- a/src/nvidia-modeset/Makefile
+++ b/src/nvidia-modeset/Makefile
@@ -140,8 +140,11 @@ ifeq ($(TARGET_ARCH),x86_64)
     CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -fcf-protection=branch)
   endif
   CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -fno-jump-tables)
+  CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -fno-asynchronous-unwind-tables)
   CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -mindirect-branch=thunk-extern)
   CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -mindirect-branch-register)
+  CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -mharden-sls=all)
+  CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -mfunction-return=thunk-extern)
 endif
 
 CFLAGS += $(CONDITIONAL_CFLAGS)
diff --git a/src/nvidia/Makefile b/src/nvidia/Makefile
index b7ca09b..dc747bd 100644
--- a/src/nvidia/Makefile
+++ b/src/nvidia/Makefile
@@ -164,6 +164,8 @@ ifeq ($(TARGET_ARCH),x86_64)
   CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -fno-jump-tables)
   CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -mindirect-branch-register)
   CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -mindirect-branch=thunk-extern)
+  CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -mharden-sls=all)
+  CONDITIONAL_CFLAGS += $(call TEST_CC_ARG, -mfunction-return=thunk-extern)
 endif
 
 CFLAGS += $(CONDITIONAL_CFLAGS)

@ptr1337
Copy link
Author

ptr1337 commented Dec 29, 2022

Actually I already got nvidia-dkms patched for 6.2.
This patch actually fixes it:

From ac78402fe504591eeb98a4212e695731755d6b25 Mon Sep 17 00:00:00 2001
From: Peter Jung <admin@ptr1337.dev>
Date: Tue, 27 Dec 2022 18:08:48 +0100
Subject: [PATCH] Tentative fix for NVIDIA 525 driver for Linux 6.2-rc1

Signed-off-by: Peter Jung <admin@ptr1337.dev>
---
 kernel/nvidia-drm/nvidia-drm-connector.c | 22 +++++++++++++++++++
 kernel/nvidia-drm/nvidia-drm-drv.c       |  4 ++++
 2 files changed, 26 insertions(+)

diff --git a/kernel/nvidia-drm/nvidia-drm-connector.c b/kernel/nvidia-drm/nvidia-drm-connector.c
index 77a6120..cd92bb2 100644
--- a/kernel/nvidia-drm/nvidia-drm-connector.c
+++ b/kernel/nvidia-drm/nvidia-drm-connector.c
@@ -20,6 +20,8 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
+#include <linux/version.h>
+#include <drm/drm_edid.h>
 #include "nvidia-drm-conftest.h" /* NV_DRM_ATOMIC_MODESET_AVAILABLE */
 
 #if defined(NV_DRM_ATOMIC_MODESET_AVAILABLE)
@@ -98,6 +100,7 @@ __nv_drm_detect_encoder(struct NvKmsKapiDynamicDisplayParams *pDetectParams,
             break;
     }
 
+#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 2, 0)
     if (connector->override_edid) {
         const struct drm_property_blob *edid = connector->edid_blob_ptr;
 
@@ -110,6 +113,25 @@ __nv_drm_detect_encoder(struct NvKmsKapiDynamicDisplayParams *pDetectParams,
                     sizeof(pDetectParams->edid.buffer));
         }
     }
+#else
+    // Rel. commit "drm/edid: detach debugfs EDID override from EDID property update" (Jani Nikula, 24 Oct 2022)
+    // NOTE: HUGE HACK!
+    mutex_lock(&connector->edid_override_mutex);
+    if (connector->edid_override) {
+        const struct edid *edid = drm_edid_raw(connector->edid_override);
+        size_t edid_length = EDID_LENGTH * (edid->extensions + 1);
+        if (edid_length <= sizeof(pDetectParams->edid.buffer)) {
+            memcpy(pDetectParams->edid.buffer, edid, edid_length);
+            pDetectParams->edid.bufferSize = edid_length;
+            pDetectParams->overrideEdid = NV_TRUE;
+        } else {
+            WARN_ON(edid_length >
+                    sizeof(pDetectParams->edid.buffer));
+        }
+    }
+    mutex_unlock(&connector->edid_override_mutex);
+
+#endif
 
     if (!nvKms->getDynamicDisplayInfo(nv_dev->pDevice, pDetectParams)) {
         NV_DRM_DEV_LOG_ERR(
diff --git a/kernel/nvidia-drm/nvidia-drm-drv.c b/kernel/nvidia-drm/nvidia-drm-drv.c
index ac504ec..75ef54d 100644
--- a/kernel/nvidia-drm/nvidia-drm-drv.c
+++ b/kernel/nvidia-drm/nvidia-drm-drv.c
@@ -20,6 +20,7 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
+#include <linux/version.h>
 #include "nvidia-drm-conftest.h" /* NV_DRM_AVAILABLE and NV_DRM_DRM_GEM_H_PRESENT */
 
 #include "nvidia-drm-priv.h"
@@ -257,9 +258,12 @@ nv_drm_init_mode_config(struct nv_drm_device *nv_dev,
     dev->mode_config.preferred_depth = 24;
     dev->mode_config.prefer_shadow = 1;
 
+// Rel. commit "drm: Remove drm_mode_config::fb_base" (Zack Rusin, 18 Oct 2022)
+#if defined(CONFIG_FB) && LINUX_VERSION_CODE < KERNEL_VERSION(6, 2, 0)
     /* Currently unused. Update when needed. */
 
     dev->mode_config.fb_base = 0;
+#endif
 
 #if defined(NV_DRM_CRTC_STATE_HAS_ASYNC_FLIP) || \
     defined(NV_DRM_CRTC_STATE_HAS_PAGEFLIP_FLAGS)
-- 
2.39.0

The rethunk part is not needed to get fixed for now. So far it also works without the above patch. I think nvidia will fix this with their new driver hopefully.

@xevilstar
Copy link

this patch fixes also the not-open driver sources

@ptr1337
Copy link
Author

ptr1337 commented Jan 3, 2023

this patch fixes also the not-open driver sources

Yes, I mainly made it for the closed drivers in my case. But should work for both. :)

@xevilstar
Copy link

leave the "should" it is working on my laptop ;) thanks

`root@ghost:~# nvidia-smi
Tue Jan 3 16:55:13 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.60.13 Driver Version: 525.60.13 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... On | 00000000:01:00.0 On | N/A |
| N/A 41C P8 18W / N/A | 705MiB / 8192MiB | 17% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 10334 G /usr/lib/xorg/Xorg 328MiB |
| 0 N/A N/A 10613 G /usr/bin/gnome-shell 100MiB |
| 0 N/A N/A 11593 G ...plications/Zoiper5/zoiper 14MiB |
| 0 N/A N/A 11623 C+G ...161843668523319335,131072 125MiB |
| 0 N/A N/A 11923 G ...RendererForSitePerProcess 47MiB |
| 0 N/A N/A 23144 C+G ...lib/vmware/bin/mksSandbox 76MiB |
| 0 N/A N/A 73834 G /usr/bin/deja-dup 6MiB |
+-----------------------------------------------------------------------------+
root@ghost:~# uname -a
Linux ghost 6.2.0-rc2 #1 SMP PREEMPT_DYNAMIC Tue Jan 3 09:06:34 CET 2023 x86_64 GNU/Linux`

@xevilstar
Copy link

news ?

@ptr1337
Copy link
Author

ptr1337 commented Jan 5, 2023

news ?

Its fixed in 525.78.01

@xevilstar
Copy link

thanks

@ptr1337 ptr1337 closed this as completed Jan 5, 2023
@xevilstar
Copy link

It works but for some reasons it seemed to have skipped the dkms installation even if I specified --dkms in the install string

`uname -a
Linux ghost 6.2.0-rc2 #1 SMP PREEMPT_DYNAMIC Tue Jan 3 09:06:34 CET 2023 x86_64 GNU/Linux
root@ghost:~# nvidia-smi
Thu Jan 5 17:05:36 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.78.01 Driver Version: 525.78.01 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... Off | 00000000:01:00.0 On | N/A |
| N/A 40C P8 18W / 115W | 901MiB / 8192MiB | 12% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 14995 G /usr/lib/xorg/Xorg 298MiB |
| 0 N/A N/A 15217 G /usr/bin/gnome-shell 62MiB |
| 0 N/A N/A 16180 G ...plications/Zoiper5/zoiper 12MiB |
| 0 N/A N/A 16212 C+G ...224628135556143660,131072 388MiB |
| 0 N/A N/A 16508 G ...RendererForSitePerProcess 47MiB |
| 0 N/A N/A 22285 C+G ...lib/vmware/bin/mksSandbox 75MiB |
| 0 N/A N/A 42055 G deja-dup 10MiB |
+-----------------------------------------------------------------------------+
`

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants