DKMS (dkms-3.1.8) make.log for nvidia/470.256.02 for kernel 6.14.4-zen1-2-zen (x86_64) 2025年 05月 01日 星期四 11:36:28 CST Building module(s) # command: 'make' -j4 IGNORE_PREEMPT_RT_PRESENCE=1 NV_EXCLUDE_BUILD_MODULES='__EXCLUDE_MODULES' KERNEL_UNAME=6.14.4-zen1-2-zen IGNORE_CC_MISMATCH='__IGNORE_CC_MISMATCH' modules make[1]: 进入目录“/usr/lib/modules/6.14.4-zen1-2-zen/build” make[2]: 进入目录“/var/lib/dkms/nvidia/470.256.02/build” warning: the compiler differs from the one used to build the kernel The kernel was built by: gcc (GCC) 15.1.1 20250425 You are using: cc (GCC) 15.1.1 20250425 SYMLINK nvidia/nv-kernel.o SYMLINK 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: acquire_console_sem CONFTEST: console_lock CONFTEST: ioremap_cache CONFTEST: ioremap_wc CONFTEST: acpi_walk_namespace CONFTEST: sg_alloc_table CONFTEST: pci_get_domain_bus_and_slot CONFTEST: get_num_physpages CONFTEST: efi_enabled CONFTEST: pde_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: dma_attr_macros CONFTEST: dma_map_page_attrs 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: of_get_ibm_chip_id CONFTEST: node_end_pfn CONFTEST: pci_bus_address CONFTEST: pci_stop_and_remove_bus_device CONFTEST: pci_remove_bus_device CONFTEST: register_cpu_notifier CONFTEST: cpuhp_setup_state CONFTEST: dma_map_resource CONFTEST: backlight_device_register CONFTEST: get_backlight_device_by_name CONFTEST: timer_setup CONFTEST: pci_enable_msix_range CONFTEST: kernel_read_has_pointer_pos_arg CONFTEST: kernel_write CONFTEST: kthread_create_on_node CONFTEST: of_find_matching_node CONFTEST: dev_is_pci 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: hlist_for_each_entry CONFTEST: pci_enable_atomic_ops_to_root CONFTEST: vga_tryget CONFTEST: pgprot_decrypted CONFTEST: cc_mkdec CONFTEST: iterate_fd CONFTEST: seq_read_iter CONFTEST: sg_page_iter_page CONFTEST: follow_pfn CONFTEST: drm_gem_object_get CONFTEST: drm_gem_object_put_unlocked CONFTEST: set_close_on_exec CONFTEST: dma_set_coherent_mask CONFTEST: acpi_bus_get_device CONFTEST: get_task_ioprio CONFTEST: address_space_init_once CONFTEST: kbasename CONFTEST: vzalloc CONFTEST: wait_on_bit_lock_argument_count CONFTEST: bitmap_clear CONFTEST: usleep_range CONFTEST: radix_tree_empty CONFTEST: radix_tree_replace_slot CONFTEST: pnv_npu2_init_context CONFTEST: cpumask_of_node CONFTEST: acpi_video_backlight_use_native CONFTEST: drm_dev_unref CONFTEST: drm_reinit_primary_mode_group CONFTEST: get_user_pages_remote CONFTEST: get_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_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: 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 CONFTEST: is_export_symbol_present_get_unused_fd_flags 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_screen_info CONFTEST: is_export_symbol_gpl_screen_info CONFTEST: is_export_symbol_present_kthread_create_on_node CONFTEST: acpi_op_remove CONFTEST: file_operations CONFTEST: file_inode CONFTEST: kuid_t CONFTEST: dma_ops CONFTEST: swiotlb_dma_ops CONFTEST: noncoherent_swiotlb_dma_ops CONFTEST: vm_fault_has_address CONFTEST: backlight_properties_type CONFTEST: vm_insert_pfn_prot CONFTEST: vmf_insert_pfn_prot CONFTEST: vm_ops_fault_removed_vma_arg CONFTEST: vmbus_channel_has_ringbuffer_page CONFTEST: device_driver_of_match_table CONFTEST: device_of_node CONFTEST: node_states_n_memory CONFTEST: kmem_cache_has_kobj_remove_work CONFTEST: sysfs_slab_unlink CONFTEST: proc_ops CONFTEST: timespec64 CONFTEST: vmalloc_has_pgprot_t_arg CONFTEST: acpi_fadt_low_power_s0 CONFTEST: mm_has_mmap_lock CONFTEST: pci_channel_state CONFTEST: num_registered_fb CONFTEST: vm_area_struct_has_const_vm_flags CONFTEST: address_space CONFTEST: backing_dev_info CONFTEST: mm_context_t CONFTEST: vm_fault_t CONFTEST: mmu_notifier_ops_invalidate_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_crtc_destroy_state_has_crtc_arg CONFTEST: drm_atomic_helper_plane_destroy_state_has_plane_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_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_mode_config_has_allow_fb_modifiers CONFTEST: dma_resv_add_fence CONFTEST: dma_resv_reserve_fences CONFTEST: reservation_object_reserve_shared_has_num_fences_arg CONFTEST: drm_connector_has_override_edid CONFTEST: drm_driver_has_dumb_destroy CONFTEST: drm_unlocked_ioctl_flag_present CONFTEST: dom0_kernel_present CONFTEST: nvidia_vgpu_kvm_build CONFTEST: nvidia_grid_build CONFTEST: nvidia_grid_csp_build CONFTEST: pm_runtime_available CONFTEST: pci_class_multimedia_hd_audio CONFTEST: drm_available CONFTEST: drm_atomic_available CONFTEST: is_export_symbol_gpl_refcount_inc CONFTEST: is_export_symbol_gpl_refcount_dec_and_test CONFTEST: drm_alpha_blending_available CONFTEST: is_export_symbol_present_drm_gem_prime_fd_to_handle CONFTEST: is_export_symbol_present_drm_gem_prime_handle_to_fd CONFTEST: ib_peer_memory_symbols CC [M] nvidia/nv.o CC [M] nvidia/nv-pci.o CC [M] nvidia/nv-acpi.o CC [M] nvidia/nv-cray.o 包含于文件 ././common/inc/conftest.h:5, 于 ././common/inc/nv_stdarg.h:29, 于 ././common/inc/os-interface.h:27, 于 nvidia/nv-acpi.c:13: ././conftest/functions.h:11:2: 错误:#error acpi_walk_namespace() conftest failed! 11 | #error acpi_walk_namespace() conftest failed! | ^~~~~ 包含于文件 ././common/inc/conftest.h:5, 于 ././common/inc/nv_stdarg.h:29, 于 ././common/inc/os-interface.h:27, 于 nvidia/nv.c:12: ././conftest/functions.h:11:2: 错误:#error acpi_walk_namespace() conftest failed! 11 | #error acpi_walk_namespace() conftest failed! | ^~~~~ ././conftest/functions.h:79:2: 错误:#error wait_on_bit_lock() conftest failed! 79 | #error wait_on_bit_lock() conftest failed! | ^~~~~ ././conftest/functions.h:79:2: 错误:#error wait_on_bit_lock() conftest failed! 79 | #error wait_on_bit_lock() conftest failed! | ^~~~~ ././conftest/functions.h:84:2: 错误:#error radix_tree_replace_slot() conftest failed! 84 | #error radix_tree_replace_slot() conftest failed! | ^~~~~ ././conftest/functions.h:84:2: 错误:#error radix_tree_replace_slot() conftest failed! 84 | #error radix_tree_replace_slot() conftest failed! | ^~~~~ 包含于文件 ././common/inc/conftest.h:5, 于 ././common/inc/nv_stdarg.h:29, 于 ././common/inc/os-interface.h:27, 于 nvidia/nv-cray.c:13: ././conftest/functions.h:11:2: 错误:#error acpi_walk_namespace() conftest failed! 11 | #error acpi_walk_namespace() conftest failed! | ^~~~~ ././conftest/functions.h:79:2: 错误:#error wait_on_bit_lock() conftest failed! 79 | #error wait_on_bit_lock() conftest failed! | ^~~~~ ././conftest/functions.h:84:2: 错误:#error radix_tree_replace_slot() conftest failed! 84 | #error radix_tree_replace_slot() conftest failed! | ^~~~~ 包含于文件 ././common/inc/nv-linux.h:21, 于 nvidia/nv-acpi.c:14: ././common/inc/nv-mm.h:29:13: 错误:conflicting types for ‘vm_fault_t’; have ‘int’ 29 | typedef int vm_fault_t; | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mmzone.h:22, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/gfp.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:7, 于 ././common/inc/nv-pgprot.h:17, 于 ././common/inc/nv-linux.h:20: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm_types.h:1311:32: 附注:previous declaration of ‘vm_fault_t’ with type ‘vm_fault_t’ {或称 ‘unsigned int’} 1311 | typedef __bitwise unsigned int vm_fault_t; | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/arch/x86/include/asm/preempt.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/preempt.h:79, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/spinlock.h:56, 于 ././common/inc/nv-lock.h:16, 于 ././common/inc/nv-linux.h:19: ././common/inc/nv-mm.h: 在函数‘NV_GET_USER_PAGES’中: /usr/lib/modules/6.14.4-zen1-2-zen/build/arch/x86/include/asm/current.h:52:17: 错误:传递‘get_user_pages’的第 1 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 52 | #define current get_current() | ^~~~~~~~~~~~~ | | | struct task_struct * ././common/inc/nv-mm.h:78:31: 附注:在宏 ‘current’ 展开时 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:35: 附注:expected ‘long unsigned int’ but argument is of type ‘struct task_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:78:47: 错误:传递‘get_user_pages’的第 2 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 78 | return get_user_pages(current, current->mm, start, nr_pages, write, /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:56: 附注:expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~~~~ ././common/inc/nv-mm.h:78:60: 错误:传递‘get_user_pages’的第 4 个参数时将整数赋给指针,未作类型转换 [-Wint-conversion] 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~~ | | | long unsigned int /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2535:59: 附注:expected ‘struct page **’ but argument is of type ‘long unsigned int’ 2535 | unsigned int gup_flags, struct page **pages); | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:78:16: 错误:too many arguments to function ‘get_user_pages’; expected 4, have 8 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~~~~~~~~ ~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:6: 附注:在此声明 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ^~~~~~~~~~~~~~ 包含于文件 ././common/inc/nv.h:22, 于 ././common/inc/nv-linux.h:15: ././common/inc/nv-mm.h: 在函数‘NV_GET_USER_PAGES_REMOTE’中: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/stddef.h:8:14: 错误:传递‘get_user_pages’的第 1 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ | | | void * ././common/inc/nv-mm.h:166:35: 附注:在宏 ‘NULL’ 展开时 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:35: 附注:expected ‘long unsigned int’ but argument is of type ‘void *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:166:41: 错误:传递‘get_user_pages’的第 2 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~ | | | struct mm_struct * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:56: 附注:expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~~~~ ././common/inc/nv-mm.h:166:52: 错误:传递‘get_user_pages’的第 4 个参数时将整数赋给指针,未作类型转换 [-Wint-conversion] 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~~~~~ | | | long unsigned int /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2535:59: 附注:expected ‘struct page **’ but argument is of type ‘long unsigned int’ 2535 | unsigned int gup_flags, struct page **pages); | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:166:20: 错误:too many arguments to function ‘get_user_pages’; expected 4, have 8 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~~~~~~~~~~~ ~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:6: 附注:在此声明 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ^~~~~~~~~~~~~~ ././common/inc/nv-mm.h: 在函数‘nv_page_fault_va’中: ././common/inc/nv-mm.h:190:33: 错误:‘struct vm_fault’ has no member named ‘virtual_address’; did you mean ‘real_address’? 190 | return (unsigned long)(vmf->virtual_address); | ^~~~~~~~~~~~~~~ | real_address ././common/inc/nv-mm.h: 在函数‘nv_mmap_read_lock’中: ././common/inc/nv-mm.h:199:20: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 199 | down_read(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_read_unlock’中: ././common/inc/nv-mm.h:208:18: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 208 | up_read(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_write_lock’中: ././common/inc/nv-mm.h:217:21: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 217 | down_write(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_write_unlock’中: ././common/inc/nv-mm.h:226:19: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 226 | up_write(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mm_rwsem_is_locked’中: ././common/inc/nv-mm.h:235:33: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 235 | return rwsem_is_locked(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_get_lock’中: ././common/inc/nv-mm.h:244:17: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 244 | return &mm->mmap_sem; | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_vm_flags_set’中: ././common/inc/nv-mm.h:261:19: 错误:向只读成员‘vm_flags’赋值 261 | vma->vm_flags |= flags; | ^~ ././common/inc/nv-mm.h: 在函数‘nv_vm_flags_clear’中: ././common/inc/nv-mm.h:266:19: 错误:向只读成员‘vm_flags’赋值 266 | vma->vm_flags &= ~flags; | ^~ 包含于文件 ././common/inc/nv-linux.h:25: ././common/inc/nv-time.h: 在文件作用域: ././common/inc/nv-time.h:39:8: 错误:‘struct timespec64’重定义 39 | struct timespec64 { | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/jiffies.h:10, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/ktime.h:25, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timer.h:6, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/uprobes.h:18, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm_types.h:16: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:13:8: 附注:原先在这里定义 13 | struct timespec64 { | ^~~~~~~~~~ ././common/inc/nv-time.h:76:33: 错误:conflicting types for ‘timespec64_add’; have ‘struct timespec64(const struct timespec64, const struct timespec64)’ 76 | static inline struct timespec64 timespec64_add | ^~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:73:33: 附注:previous definition of ‘timespec64_add’ with type ‘struct timespec64(struct timespec64, struct timespec64)’ 73 | static inline struct timespec64 timespec64_add(struct timespec64 lhs, | ^~~~~~~~~~~~~~ ././common/inc/nv-time.h:94:34: 错误:conflicting types for ‘timespec64_sub’; have ‘struct timespec64(const struct timespec64, const struct timespec64)’ 94 | static inline struct timespec64 timespec64_sub | ^~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:85:33: 附注:previous definition of ‘timespec64_sub’ with type ‘struct timespec64(struct timespec64, struct timespec64)’ 85 | static inline struct timespec64 timespec64_sub(struct timespec64 lhs, | ^~~~~~~~~~~~~~ ././common/inc/nv-time.h:112:19: 错误:conflicting types for ‘timespec64_to_ns’; have ‘s64(struct timespec64 *)’ {或称 ‘long long int(struct timespec64 *)’} 112 | static inline s64 timespec64_to_ns(struct timespec64 *ts) | ^~~~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:135:19: 附注:previous definition of ‘timespec64_to_ns’ with type ‘s64(const struct timespec64 *)’ {或称 ‘long long int(const struct timespec64 *)’} 135 | static inline s64 timespec64_to_ns(const struct timespec64 *ts) | ^~~~~~~~~~~~~~~~ ././common/inc/nv-time.h: 在函数‘nv_ktime_get_raw_ns’中: ././common/inc/nv-time.h:121:24: 错误:传递‘ktime_get_raw_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 121 | ktime_get_raw_ts64(&ts); | ^~~ | | | struct timespec64 * 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/ktime.h:235: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:42:51: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 42 | extern void ktime_get_raw_ts64(struct timespec64 *ts); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-time.h: 在函数‘nv_sleep_ms’中: ././common/inc/nv-time.h:185:25: 错误:传递‘ktime_get_real_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 185 | ktime_get_real_ts64(&tm_aux); | ^~~~~~~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:44:52: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 44 | extern void ktime_get_real_ts64(struct timespec64 *tv); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-time.h:221:33: 错误:传递‘ktime_get_real_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 221 | ktime_get_real_ts64(&tm_aux); | ^~~~~~~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:44:52: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 44 | extern void ktime_get_real_ts64(struct timespec64 *tv); | ~~~~~~~~~~~~~~~~~~~^~ 包含于文件 ././common/inc/conftest.h:5, 于 ././common/inc/nv-pci-types.h:27, 于 nvidia/nv-pci.c:12: ././conftest/functions.h:11:2: 错误:#error acpi_walk_namespace() conftest failed! 11 | #error acpi_walk_namespace() conftest failed! | ^~~~~ ././conftest/functions.h:79:2: 错误:#error wait_on_bit_lock() conftest failed! 79 | #error wait_on_bit_lock() conftest failed! | ^~~~~ ././conftest/functions.h:84:2: 错误:#error radix_tree_replace_slot() conftest failed! 84 | #error radix_tree_replace_slot() conftest failed! | ^~~~~ 包含于文件 ././common/inc/nv-linux.h:21, 于 ././common/inc/nv-pci.h:15, 于 nvidia/nv-pci.c:13: ././common/inc/nv-mm.h:29:13: 错误:conflicting types for ‘vm_fault_t’; have ‘int’ 29 | typedef int vm_fault_t; | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mmzone.h:22, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/gfp.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/xarray.h:16, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/radix-tree.h:21, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/idr.h:15, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/kernfs.h:12, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/sysfs.h:16, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/kobject.h:20, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/pci.h:35, 于 nvidia/nv-pci-table.h:14, 于 nvidia/nv-pci.c:11: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm_types.h:1311:32: 附注:previous declaration of ‘vm_fault_t’ with type ‘vm_fault_t’ {或称 ‘unsigned int’} 1311 | typedef __bitwise unsigned int vm_fault_t; | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mutex.h:14, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/kernfs.h:11: ././common/inc/nv-mm.h: 在函数‘NV_GET_USER_PAGES’中: /usr/lib/modules/6.14.4-zen1-2-zen/build/arch/x86/include/asm/current.h:52:17: 错误:传递‘get_user_pages’的第 1 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 52 | #define current get_current() | ^~~~~~~~~~~~~ | | | struct task_struct * ././common/inc/nv-mm.h:78:31: 附注:在宏 ‘current’ 展开时 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/scatterlist.h:8, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/dmapool.h:14, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/pci.h:1660: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:35: 附注:expected ‘long unsigned int’ but argument is of type ‘struct task_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:78:47: 错误:传递‘get_user_pages’的第 2 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 78 | return get_user_pages(current, current->mm, start, nr_pages, write, /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:56: 附注:expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~~~~ ././common/inc/nv-mm.h:78:60: 错误:传递‘get_user_pages’的第 4 个参数时将整数赋给指针,未作类型转换 [-Wint-conversion] 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~~ | | | long unsigned int /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2535:59: 附注:expected ‘struct page **’ but argument is of type ‘long unsigned int’ 2535 | unsigned int gup_flags, struct page **pages); | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:78:16: 错误:too many arguments to function ‘get_user_pages’; expected 4, have 8 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~~~~~~~~ ~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:6: 附注:在此声明 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ^~~~~~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/uapi/linux/posix_types.h:5, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/uapi/linux/types.h:14, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/types.h:6, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/uapi/linux/mei_uuid.h:12, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/uapi/linux/mei.h:10, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mod_devicetable.h:12, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/pci.h:27: ././common/inc/nv-mm.h: 在函数‘NV_GET_USER_PAGES_REMOTE’中: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/stddef.h:8:14: 错误:传递‘get_user_pages’的第 1 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ | | | void * ././common/inc/nv-mm.h:166:35: 附注:在宏 ‘NULL’ 展开时 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:35: 附注:expected ‘long unsigned int’ but argument is of type ‘void *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:166:41: 错误:传递‘get_user_pages’的第 2 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~ | | | struct mm_struct * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:56: 附注:expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~~~~ ././common/inc/nv-mm.h:166:52: 错误:传递‘get_user_pages’的第 4 个参数时将整数赋给指针,未作类型转换 [-Wint-conversion] 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~~~~~ | | | long unsigned int /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2535:59: 附注:expected ‘struct page **’ but argument is of type ‘long unsigned int’ 2535 | unsigned int gup_flags, struct page **pages); | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:166:20: 错误:too many arguments to function ‘get_user_pages’; expected 4, have 8 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~~~~~~~~~~~ ~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:6: 附注:在此声明 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ^~~~~~~~~~~~~~ ././common/inc/nv-mm.h: 在函数‘nv_page_fault_va’中: ././common/inc/nv-mm.h:190:33: 错误:‘struct vm_fault’ has no member named ‘virtual_address’; did you mean ‘real_address’? 190 | return (unsigned long)(vmf->virtual_address); | ^~~~~~~~~~~~~~~ | real_address ././common/inc/nv-mm.h: 在函数‘nv_mmap_read_lock’中: ././common/inc/nv-mm.h:199:20: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 199 | down_read(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_read_unlock’中: ././common/inc/nv-mm.h:208:18: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 208 | up_read(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_write_lock’中: ././common/inc/nv-mm.h:217:21: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 217 | down_write(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_write_unlock’中: ././common/inc/nv-mm.h:226:19: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 226 | up_write(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mm_rwsem_is_locked’中: ././common/inc/nv-mm.h:235:33: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 235 | return rwsem_is_locked(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_get_lock’中: ././common/inc/nv-mm.h:244:17: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 244 | return &mm->mmap_sem; | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_vm_flags_set’中: ././common/inc/nv-mm.h:261:19: 错误:向只读成员‘vm_flags’赋值 261 | vma->vm_flags |= flags; | ^~ ././common/inc/nv-mm.h: 在函数‘nv_vm_flags_clear’中: ././common/inc/nv-mm.h:266:19: 错误:向只读成员‘vm_flags’赋值 266 | vma->vm_flags &= ~flags; | ^~ 包含于文件 ././common/inc/nv-linux.h:25: ././common/inc/nv-time.h: 在文件作用域: ././common/inc/nv-time.h:39:8: 错误:‘struct timespec64’重定义 39 | struct timespec64 { | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/jiffies.h:10, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/ktime.h:25, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timer.h:6, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/uprobes.h:18, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm_types.h:16: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:13:8: 附注:原先在这里定义 13 | struct timespec64 { | ^~~~~~~~~~ ././common/inc/nv-time.h:76:33: 错误:conflicting types for ‘timespec64_add’; have ‘struct timespec64(const struct timespec64, const struct timespec64)’ 76 | static inline struct timespec64 timespec64_add | ^~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:73:33: 附注:previous definition of ‘timespec64_add’ with type ‘struct timespec64(struct timespec64, struct timespec64)’ 73 | static inline struct timespec64 timespec64_add(struct timespec64 lhs, | ^~~~~~~~~~~~~~ ././common/inc/nv-time.h:94:34: 错误:conflicting types for ‘timespec64_sub’; have ‘struct timespec64(const struct timespec64, const struct timespec64)’ 94 | static inline struct timespec64 timespec64_sub | ^~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:85:33: 附注:previous definition of ‘timespec64_sub’ with type ‘struct timespec64(struct timespec64, struct timespec64)’ 85 | static inline struct timespec64 timespec64_sub(struct timespec64 lhs, | ^~~~~~~~~~~~~~ ././common/inc/nv-time.h:112:19: 错误:conflicting types for ‘timespec64_to_ns’; have ‘s64(struct timespec64 *)’ {或称 ‘long long int(struct timespec64 *)’} 112 | static inline s64 timespec64_to_ns(struct timespec64 *ts) | ^~~~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:135:19: 附注:previous definition of ‘timespec64_to_ns’ with type ‘s64(const struct timespec64 *)’ {或称 ‘long long int(const struct timespec64 *)’} 135 | static inline s64 timespec64_to_ns(const struct timespec64 *ts) | ^~~~~~~~~~~~~~~~ ././common/inc/nv-time.h: 在函数‘nv_ktime_get_raw_ns’中: ././common/inc/nv-time.h:121:24: 错误:传递‘ktime_get_raw_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 121 | ktime_get_raw_ts64(&ts); | ^~~ | | | struct timespec64 * 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/ktime.h:235: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:42:51: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 42 | extern void ktime_get_raw_ts64(struct timespec64 *ts); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-time.h: 在函数‘nv_sleep_ms’中: ././common/inc/nv-time.h:185:25: 错误:传递‘ktime_get_real_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 185 | ktime_get_real_ts64(&tm_aux); | ^~~~~~~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:44:52: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 44 | extern void ktime_get_real_ts64(struct timespec64 *tv); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-time.h:221:33: 错误:传递‘ktime_get_real_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 221 | ktime_get_real_ts64(&tm_aux); | ^~~~~~~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:44:52: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 44 | extern void ktime_get_real_ts64(struct timespec64 *tv); | ~~~~~~~~~~~~~~~~~~~^~ 包含于文件 ././common/inc/nv-linux.h:176: ././common/inc/nv-list-helpers.h: 在文件作用域: ././common/inc/nv-list-helpers.h:81:9: 警告:‘hlist_entry_safe’ 重定义 81 | #define hlist_entry_safe(ptr, type, member) \ | ^~~~~~~~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/smp.h:12, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/lockdep.h:14, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/spinlock.h:63: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/list.h:1143:9: 附注:这是先前定义的位置 1143 | #define hlist_entry_safe(ptr, type, member) \ | ^~~~~~~~~~~~~~~~ 包含于文件 ././common/inc/nv-linux.h:176: ././common/inc/nv-list-helpers.h: 在文件作用域: ././common/inc/nv-linux.h:190:21: 错误:conflicting types for ‘__kuid_val’; have ‘uid_t(uid_t)’ {或称 ‘unsigned int(unsigned int)’} 190 | static inline uid_t __kuid_val(uid_t uid) | ^~~~~~~~~~ ././common/inc/nv-list-helpers.h:81:9: 警告:‘hlist_entry_safe’ 重定义 81 | #define hlist_entry_safe(ptr, type, member) \ | ^~~~~~~~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/stat.h:20, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/fs.h:10, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/huge_mm.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:1133: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/uidgid.h:26:21: 附注:previous definition of ‘__kuid_val’ with type ‘uid_t(kuid_t)’ {或称 ‘unsigned int(kuid_t)’} 26 | static inline uid_t __kuid_val(kuid_t uid) | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/pci.h:32: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/list.h:1143:9: 附注:这是先前定义的位置 1143 | #define hlist_entry_safe(ptr, type, member) \ | ^~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:190:21: 错误:conflicting types for ‘__kuid_val’; have ‘uid_t(uid_t)’ {或称 ‘unsigned int(unsigned int)’} 190 | static inline uid_t __kuid_val(uid_t uid) | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/kernfs.h:18: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/uidgid.h:26:21: 附注:previous definition of ‘__kuid_val’ with type ‘uid_t(kuid_t)’ {或称 ‘unsigned int(kuid_t)’} 26 | static inline uid_t __kuid_val(kuid_t uid) | ^~~~~~~~~~ 包含于文件 ././common/inc/nv-linux.h:21, 于 nvidia/nv-cray.c:14: ././common/inc/nv-mm.h:29:13: 错误:conflicting types for ‘vm_fault_t’; have ‘int’ 29 | typedef int vm_fault_t; | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mmzone.h:22, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/gfp.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:7, 于 ././common/inc/nv-pgprot.h:17, 于 ././common/inc/nv-linux.h:20: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm_types.h:1311:32: 附注:previous declaration of ‘vm_fault_t’ with type ‘vm_fault_t’ {或称 ‘unsigned int’} 1311 | typedef __bitwise unsigned int vm_fault_t; | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/arch/x86/include/asm/preempt.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/preempt.h:79, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/spinlock.h:56, 于 ././common/inc/nv-lock.h:16, 于 ././common/inc/nv-linux.h:19: ././common/inc/nv-mm.h: 在函数‘NV_GET_USER_PAGES’中: /usr/lib/modules/6.14.4-zen1-2-zen/build/arch/x86/include/asm/current.h:52:17: 错误:传递‘get_user_pages’的第 1 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 52 | #define current get_current() | ^~~~~~~~~~~~~ | | | struct task_struct * ././common/inc/nv-mm.h:78:31: 附注:在宏 ‘current’ 展开时 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:35: 附注:expected ‘long unsigned int’ but argument is of type ‘struct task_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:78:47: 错误:传递‘get_user_pages’的第 2 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 78 | return get_user_pages(current, current->mm, start, nr_pages, write, /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:56: 附注:expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~~~~ ././common/inc/nv-mm.h:78:60: 错误:传递‘get_user_pages’的第 4 个参数时将整数赋给指针,未作类型转换 [-Wint-conversion] 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~~ | | | long unsigned int /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2535:59: 附注:expected ‘struct page **’ but argument is of type ‘long unsigned int’ 2535 | unsigned int gup_flags, struct page **pages); | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:78:16: 错误:too many arguments to function ‘get_user_pages’; expected 4, have 8 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~~~~~~~~ ~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:6: 附注:在此声明 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ^~~~~~~~~~~~~~ 包含于文件 ././common/inc/nv.h:22, 于 ././common/inc/nv-linux.h:15: ././common/inc/nv-mm.h: 在函数‘NV_GET_USER_PAGES_REMOTE’中: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/stddef.h:8:14: 错误:传递‘get_user_pages’的第 1 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ | | | void * ././common/inc/nv-mm.h:166:35: 附注:在宏 ‘NULL’ 展开时 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:35: 附注:expected ‘long unsigned int’ but argument is of type ‘void *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:166:41: 错误:传递‘get_user_pages’的第 2 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~ | | | struct mm_struct * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:56: 附注:expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~~~~ ././common/inc/nv-mm.h:166:52: 错误:传递‘get_user_pages’的第 4 个参数时将整数赋给指针,未作类型转换 [-Wint-conversion] 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~~~~~ | | | long unsigned int /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2535:59: 附注:expected ‘struct page **’ but argument is of type ‘long unsigned int’ 2535 | unsigned int gup_flags, struct page **pages); | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:166:20: 错误:too many arguments to function ‘get_user_pages’; expected 4, have 8 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~~~~~~~~~~~ ~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:6: 附注:在此声明 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ^~~~~~~~~~~~~~ ././common/inc/nv-mm.h: 在函数‘nv_page_fault_va’中: ././common/inc/nv-mm.h:190:33: 错误:‘struct vm_fault’ has no member named ‘virtual_address’; did you mean ‘real_address’? 190 | return (unsigned long)(vmf->virtual_address); | ^~~~~~~~~~~~~~~ | real_address ././common/inc/nv-mm.h: 在函数‘nv_mmap_read_lock’中: ././common/inc/nv-mm.h:199:20: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 199 | down_read(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_read_unlock’中: ././common/inc/nv-mm.h:208:18: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 208 | up_read(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_write_lock’中: ././common/inc/nv-mm.h:217:21: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 217 | down_write(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_write_unlock’中: ././common/inc/nv-mm.h:226:19: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 226 | up_write(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mm_rwsem_is_locked’中: ././common/inc/nv-mm.h:235:33: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 235 | return rwsem_is_locked(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_get_lock’中: ././common/inc/nv-mm.h:244:17: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 244 | return &mm->mmap_sem; | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_vm_flags_set’中: ././common/inc/nv-mm.h:261:19: 错误:向只读成员‘vm_flags’赋值 261 | vma->vm_flags |= flags; | ^~ ././common/inc/nv-mm.h: 在函数‘nv_vm_flags_clear’中: ././common/inc/nv-mm.h:266:19: 错误:向只读成员‘vm_flags’赋值 266 | vma->vm_flags &= ~flags; | ^~ 包含于文件 ././common/inc/nv-linux.h:25: ././common/inc/nv-time.h: 在文件作用域: ././common/inc/nv-time.h:39:8: 错误:‘struct timespec64’重定义 39 | struct timespec64 { | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/jiffies.h:10, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/ktime.h:25, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timer.h:6, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/uprobes.h:18, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm_types.h:16: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:13:8: 附注:原先在这里定义 13 | struct timespec64 { | ^~~~~~~~~~ ././common/inc/nv-time.h:76:33: 错误:conflicting types for ‘timespec64_add’; have ‘struct timespec64(const struct timespec64, const struct timespec64)’ 76 | static inline struct timespec64 timespec64_add | ^~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:73:33: 附注:previous definition of ‘timespec64_add’ with type ‘struct timespec64(struct timespec64, struct timespec64)’ 73 | static inline struct timespec64 timespec64_add(struct timespec64 lhs, | ^~~~~~~~~~~~~~ ././common/inc/nv-time.h:94:34: 错误:conflicting types for ‘timespec64_sub’; have ‘struct timespec64(const struct timespec64, const struct timespec64)’ 94 | static inline struct timespec64 timespec64_sub | ^~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:85:33: 附注:previous definition of ‘timespec64_sub’ with type ‘struct timespec64(struct timespec64, struct timespec64)’ 85 | static inline struct timespec64 timespec64_sub(struct timespec64 lhs, | ^~~~~~~~~~~~~~ ././common/inc/nv-time.h:112:19: 错误:conflicting types for ‘timespec64_to_ns’; have ‘s64(struct timespec64 *)’ {或称 ‘long long int(struct timespec64 *)’} 112 | static inline s64 timespec64_to_ns(struct timespec64 *ts) | ^~~~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:135:19: 附注:previous definition of ‘timespec64_to_ns’ with type ‘s64(const struct timespec64 *)’ {或称 ‘long long int(const struct timespec64 *)’} 135 | static inline s64 timespec64_to_ns(const struct timespec64 *ts) | ^~~~~~~~~~~~~~~~ ././common/inc/nv-time.h: 在函数‘nv_ktime_get_raw_ns’中: ././common/inc/nv-time.h:121:24: 错误:传递‘ktime_get_raw_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 121 | ktime_get_raw_ts64(&ts); | ^~~ | | | struct timespec64 * 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/ktime.h:235: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:42:51: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 42 | extern void ktime_get_raw_ts64(struct timespec64 *ts); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-time.h: 在函数‘nv_sleep_ms’中: ././common/inc/nv-time.h:185:25: 错误:传递‘ktime_get_real_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 185 | ktime_get_real_ts64(&tm_aux); | ^~~~~~~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:44:52: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 44 | extern void ktime_get_real_ts64(struct timespec64 *tv); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-time.h:221:33: 错误:传递‘ktime_get_real_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 221 | ktime_get_real_ts64(&tm_aux); | ^~~~~~~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:44:52: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 44 | extern void ktime_get_real_ts64(struct timespec64 *tv); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-linux.h:331:6: 错误:‘NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT’ 未定义,计算结果为 ‘0’ [-Werror=undef] 331 | #if (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 6) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:333:8: 错误:‘NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT’ 未定义,计算结果为 ‘0’ [-Werror=undef] 333 | #elif (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 7) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:339:2: 错误:#error "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT value unrecognized!" 339 | #error "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT value unrecognized!" | ^~~~~ ././common/inc/nv-linux.h: 在函数‘nv_vmalloc’中: ././common/inc/nv-linux.h:521:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 521 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap’中: ././common/inc/nv-linux.h:535:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 535 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap_cache’中: ././common/inc/nv-linux.h:549:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 549 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap_wc’中: ././common/inc/nv-linux.h:579:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 579 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_vmap’中: ././common/inc/nv-linux.h:666:51: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 666 | NV_MEMDBG_ADD(ptr, page_count * PAGE_SIZE); | ^ ././common/inc/nv-linux.h: 在函数‘nv_phys_to_dma’中: ././common/inc/nv-linux.h:703:12: 错误:implicit declaration of function ‘phys_to_dma’; did you mean ‘nv_phys_to_dma’? [-Wimplicit-function-declaration] 703 | return phys_to_dma(dev, pa); | ^~~~~~~~~~~ | nv_phys_to_dma 包含于文件 ././common/inc/nv-linux.h:176: ././common/inc/nv-list-helpers.h: 在文件作用域: ././common/inc/nv-list-helpers.h:81:9: 警告:‘hlist_entry_safe’ 重定义 81 | #define hlist_entry_safe(ptr, type, member) \ | ^~~~~~~~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/smp.h:12, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/lockdep.h:14, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/spinlock.h:63: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/list.h:1143:9: 附注:这是先前定义的位置 1143 | #define hlist_entry_safe(ptr, type, member) \ | ^~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:190:21: 错误:conflicting types for ‘__kuid_val’; have ‘uid_t(uid_t)’ {或称 ‘unsigned int(unsigned int)’} 190 | static inline uid_t __kuid_val(uid_t uid) | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/stat.h:20, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/fs.h:10, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/huge_mm.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:1133: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/uidgid.h:26:21: 附注:previous definition of ‘__kuid_val’ with type ‘uid_t(kuid_t)’ {或称 ‘unsigned int(kuid_t)’} 26 | static inline uid_t __kuid_val(kuid_t uid) | ^~~~~~~~~~ ././common/inc/nv-linux.h:331:6: 错误:‘NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT’ 未定义,计算结果为 ‘0’ [-Werror=undef] 331 | #if (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 6) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:333:8: 错误:‘NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT’ 未定义,计算结果为 ‘0’ [-Werror=undef] 333 | #elif (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 7) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:339:2: 错误:#error "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT value unrecognized!" 339 | #error "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT value unrecognized!" | ^~~~~ ././common/inc/nv-linux.h: 在函数‘nv_vmalloc’中: ././common/inc/nv-linux.h:521:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 521 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap’中: ././common/inc/nv-linux.h:535:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 535 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap_cache’中: ././common/inc/nv-linux.h:549:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 549 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap_wc’中: ././common/inc/nv-linux.h:579:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 579 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_vmap’中: ././common/inc/nv-linux.h:666:51: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 666 | NV_MEMDBG_ADD(ptr, page_count * PAGE_SIZE); | ^ ././common/inc/nv-linux.h: 在函数‘nv_phys_to_dma’中: ././common/inc/nv-linux.h:703:12: 错误:implicit declaration of function ‘phys_to_dma’; did you mean ‘nv_phys_to_dma’? [-Wimplicit-function-declaration] 703 | return phys_to_dma(dev, pa); | ^~~~~~~~~~~ | nv_phys_to_dma ././common/inc/nv-linux.h: 在函数‘nv_is_dma_direct’中: ././common/inc/nv-linux.h:1234:9: 错误:implicit declaration of function ‘dma_is_direct’; did you mean ‘d_is_dir’? [-Wimplicit-function-declaration] 1234 | if (dma_is_direct(get_dma_ops(dev))) | ^~~~~~~~~~~~~ | d_is_dir nvidia/nv-pci.c: 在函数‘nv_pci_probe’中: ././common/inc/nv-linux.h:607:37: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 607 | NV_MEMDBG_ADD(ptr, size); \ | ^ nvidia/nv-pci.c:325:5: 附注:在宏 ‘NV_KMALLOC’ 展开时 325 | NV_KMALLOC(nvl, sizeof(nv_linux_state_t)); | ^~~~~~~~~~ 包含于文件 ././common/inc/nv-linux.h:21, 于 nvidia/nv.c:13: ././common/inc/nv-mm.h:29:13: 错误:conflicting types for ‘vm_fault_t’; have ‘int’ 29 | typedef int vm_fault_t; | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mmzone.h:22, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/gfp.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:7, 于 ././common/inc/nv-pgprot.h:17, 于 ././common/inc/nv-linux.h:20: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm_types.h:1311:32: 附注:previous declaration of ‘vm_fault_t’ with type ‘vm_fault_t’ {或称 ‘unsigned int’} 1311 | typedef __bitwise unsigned int vm_fault_t; | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/arch/x86/include/asm/preempt.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/preempt.h:79, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/spinlock.h:56, 于 ././common/inc/nv-lock.h:16, 于 ././common/inc/nv-linux.h:19: ././common/inc/nv-mm.h: 在函数‘NV_GET_USER_PAGES’中: /usr/lib/modules/6.14.4-zen1-2-zen/build/arch/x86/include/asm/current.h:52:17: 错误:传递‘get_user_pages’的第 1 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 52 | #define current get_current() | ^~~~~~~~~~~~~ | | | struct task_struct * ././common/inc/nv-mm.h:78:31: 附注:在宏 ‘current’ 展开时 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:35: 附注:expected ‘long unsigned int’ but argument is of type ‘struct task_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:78:47: 错误:传递‘get_user_pages’的第 2 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 78 | return get_user_pages(current, current->mm, start, nr_pages, write, /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:56: 附注:expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~~~~ ././common/inc/nv-mm.h:78:60: 错误:传递‘get_user_pages’的第 4 个参数时将整数赋给指针,未作类型转换 [-Wint-conversion] 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~~ | | | long unsigned int /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2535:59: 附注:expected ‘struct page **’ but argument is of type ‘long unsigned int’ 2535 | unsigned int gup_flags, struct page **pages); | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:78:16: 错误:too many arguments to function ‘get_user_pages’; expected 4, have 8 78 | return get_user_pages(current, current->mm, start, nr_pages, write, | ^~~~~~~~~~~~~~ ~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:6: 附注:在此声明 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ^~~~~~~~~~~~~~ 包含于文件 ././common/inc/nv.h:22, 于 ././common/inc/nv-linux.h:15: ././common/inc/nv-mm.h: 在函数‘NV_GET_USER_PAGES_REMOTE’中: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/stddef.h:8:14: 错误:传递‘get_user_pages’的第 1 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 8 | #define NULL ((void *)0) | ^~~~~~~~~~~ | | | void * ././common/inc/nv-mm.h:166:35: 附注:在宏 ‘NULL’ 展开时 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:35: 附注:expected ‘long unsigned int’ but argument is of type ‘void *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:166:41: 错误:传递‘get_user_pages’的第 2 个参数时将指针赋给整数,未作类型转换 [-Wint-conversion] 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~ | | | struct mm_struct * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:56: 附注:expected ‘long unsigned int’ but argument is of type ‘struct mm_struct *’ 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ~~~~~~~~~~~~~~^~~~~~~~ ././common/inc/nv-mm.h:166:52: 错误:传递‘get_user_pages’的第 4 个参数时将整数赋给指针,未作类型转换 [-Wint-conversion] 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~~~~~ | | | long unsigned int /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2535:59: 附注:expected ‘struct page **’ but argument is of type ‘long unsigned int’ 2535 | unsigned int gup_flags, struct page **pages); | ~~~~~~~~~~~~~~^~~~~ ././common/inc/nv-mm.h:166:20: 错误:too many arguments to function ‘get_user_pages’; expected 4, have 8 166 | return get_user_pages(NULL, mm, start, nr_pages, write, force, pages, vmas); | ^~~~~~~~~~~~~~ ~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:2534:6: 附注:在此声明 2534 | long get_user_pages(unsigned long start, unsigned long nr_pages, | ^~~~~~~~~~~~~~ ././common/inc/nv-mm.h: 在函数‘nv_page_fault_va’中: ././common/inc/nv-mm.h:190:33: 错误:‘struct vm_fault’ has no member named ‘virtual_address’; did you mean ‘real_address’? 190 | return (unsigned long)(vmf->virtual_address); | ^~~~~~~~~~~~~~~ | real_address ././common/inc/nv-mm.h: 在函数‘nv_mmap_read_lock’中: ././common/inc/nv-mm.h:199:20: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 199 | down_read(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_read_unlock’中: ././common/inc/nv-mm.h:208:18: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 208 | up_read(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_write_lock’中: ././common/inc/nv-mm.h:217:21: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 217 | down_write(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_write_unlock’中: ././common/inc/nv-mm.h:226:19: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 226 | up_write(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mm_rwsem_is_locked’中: ././common/inc/nv-mm.h:235:33: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 235 | return rwsem_is_locked(&mm->mmap_sem); | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_mmap_get_lock’中: ././common/inc/nv-mm.h:244:17: 错误:‘struct mm_struct’ has no member named ‘mmap_sem’; did you mean ‘mmap_base’? 244 | return &mm->mmap_sem; | ^~~~~~~~ | mmap_base ././common/inc/nv-mm.h: 在函数‘nv_vm_flags_set’中: ././common/inc/nv-mm.h:261:19: 错误:向只读成员‘vm_flags’赋值 261 | vma->vm_flags |= flags; | ^~ ././common/inc/nv-mm.h: 在函数‘nv_vm_flags_clear’中: ././common/inc/nv-mm.h:266:19: 错误:向只读成员‘vm_flags’赋值 266 | vma->vm_flags &= ~flags; | ^~ cc1:有些警告被当作是错误 make[4]: *** [/usr/lib/modules/6.14.4-zen1-2-zen/build/scripts/Makefile.build:207:nvidia/nv-pci.o] 错误 1 make[4]: *** 正在等待未完成的任务.... 包含于文件 ././common/inc/nv-linux.h:25: ././common/inc/nv-time.h: 在文件作用域: ././common/inc/nv-time.h:39:8: 错误:‘struct timespec64’重定义 39 | struct timespec64 { | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/jiffies.h:10, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/ktime.h:25, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timer.h:6, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/uprobes.h:18, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm_types.h:16: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:13:8: 附注:原先在这里定义 13 | struct timespec64 { | ^~~~~~~~~~ ././common/inc/nv-time.h:76:33: 错误:conflicting types for ‘timespec64_add’; have ‘struct timespec64(const struct timespec64, const struct timespec64)’ 76 | static inline struct timespec64 timespec64_add | ^~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:73:33: 附注:previous definition of ‘timespec64_add’ with type ‘struct timespec64(struct timespec64, struct timespec64)’ 73 | static inline struct timespec64 timespec64_add(struct timespec64 lhs, | ^~~~~~~~~~~~~~ ././common/inc/nv-time.h:94:34: 错误:conflicting types for ‘timespec64_sub’; have ‘struct timespec64(const struct timespec64, const struct timespec64)’ 94 | static inline struct timespec64 timespec64_sub | ^~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:85:33: 附注:previous definition of ‘timespec64_sub’ with type ‘struct timespec64(struct timespec64, struct timespec64)’ 85 | static inline struct timespec64 timespec64_sub(struct timespec64 lhs, | ^~~~~~~~~~~~~~ ././common/inc/nv-time.h:112:19: 错误:conflicting types for ‘timespec64_to_ns’; have ‘s64(struct timespec64 *)’ {或称 ‘long long int(struct timespec64 *)’} 112 | static inline s64 timespec64_to_ns(struct timespec64 *ts) | ^~~~~~~~~~~~~~~~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/time64.h:135:19: 附注:previous definition of ‘timespec64_to_ns’ with type ‘s64(const struct timespec64 *)’ {或称 ‘long long int(const struct timespec64 *)’} 135 | static inline s64 timespec64_to_ns(const struct timespec64 *ts) | ^~~~~~~~~~~~~~~~ ././common/inc/nv-time.h: 在函数‘nv_ktime_get_raw_ns’中: ././common/inc/nv-time.h:121:24: 错误:传递‘ktime_get_raw_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 121 | ktime_get_raw_ts64(&ts); | ^~~ | | | struct timespec64 * 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/ktime.h:235: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:42:51: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 42 | extern void ktime_get_raw_ts64(struct timespec64 *ts); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-time.h: 在函数‘nv_sleep_ms’中: ././common/inc/nv-time.h:185:25: 错误:传递‘ktime_get_real_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 185 | ktime_get_real_ts64(&tm_aux); | ^~~~~~~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:44:52: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 44 | extern void ktime_get_real_ts64(struct timespec64 *tv); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-time.h:221:33: 错误:传递‘ktime_get_real_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 221 | ktime_get_real_ts64(&tm_aux); | ^~~~~~~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:44:52: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 44 | extern void ktime_get_real_ts64(struct timespec64 *tv); | ~~~~~~~~~~~~~~~~~~~^~ ././common/inc/nv-linux.h: 在函数‘nv_is_dma_direct’中: ././common/inc/nv-linux.h:1234:9: 错误:implicit declaration of function ‘dma_is_direct’; did you mean ‘d_is_dir’? [-Wimplicit-function-declaration] 1234 | if (dma_is_direct(get_dma_ops(dev))) | ^~~~~~~~~~~~~ | d_is_dir ././common/inc/nv-linux.h:331:6: 错误:‘NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT’ 未定义,计算结果为 ‘0’ [-Werror=undef] 331 | #if (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 6) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:333:8: 错误:‘NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT’ 未定义,计算结果为 ‘0’ [-Werror=undef] 333 | #elif (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 7) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:339:2: 错误:#error "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT value unrecognized!" 339 | #error "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT value unrecognized!" | ^~~~~ ././common/inc/nv-linux.h: 在函数‘nv_vmalloc’中: ././common/inc/nv-linux.h:521:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 521 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap’中: ././common/inc/nv-linux.h:535:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 535 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap_cache’中: ././common/inc/nv-linux.h:549:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 549 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap_wc’中: ././common/inc/nv-linux.h:579:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 579 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_vmap’中: ././common/inc/nv-linux.h:666:51: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 666 | NV_MEMDBG_ADD(ptr, page_count * PAGE_SIZE); | ^ ././common/inc/nv-linux.h: 在函数‘nv_phys_to_dma’中: ././common/inc/nv-linux.h:703:12: 错误:implicit declaration of function ‘phys_to_dma’; did you mean ‘nv_phys_to_dma’? [-Wimplicit-function-declaration] 703 | return phys_to_dma(dev, pa); | ^~~~~~~~~~~ | nv_phys_to_dma 包含于文件 ././common/inc/nv-linux.h:176: ././common/inc/nv-list-helpers.h: 在文件作用域: ././common/inc/nv-list-helpers.h:81:9: 警告:‘hlist_entry_safe’ 重定义 81 | #define hlist_entry_safe(ptr, type, member) \ | ^~~~~~~~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/smp.h:12, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/lockdep.h:14, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/spinlock.h:63: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/list.h:1143:9: 附注:这是先前定义的位置 1143 | #define hlist_entry_safe(ptr, type, member) \ | ^~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:190:21: 错误:conflicting types for ‘__kuid_val’; have ‘uid_t(uid_t)’ {或称 ‘unsigned int(unsigned int)’} 190 | static inline uid_t __kuid_val(uid_t uid) | ^~~~~~~~~~ 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/stat.h:20, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/fs.h:10, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/huge_mm.h:7, 于 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/mm.h:1133: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/uidgid.h:26:21: 附注:previous definition of ‘__kuid_val’ with type ‘uid_t(kuid_t)’ {或称 ‘unsigned int(kuid_t)’} 26 | static inline uid_t __kuid_val(kuid_t uid) | ^~~~~~~~~~ nvidia/nv-acpi.c: 在函数‘nv_acpi_methods_init’中: nvidia/nv-acpi.c:632:5: 错误:implicit declaration of function ‘NV_ACPI_WALK_NAMESPACE’; did you mean ‘ACPI_NAMESPACE’? [-Wimplicit-function-declaration] 632 | NV_ACPI_WALK_NAMESPACE(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT, | ^~~~~~~~~~~~~~~~~~~~~~ | ACPI_NAMESPACE ././common/inc/nv-linux.h: 在函数‘nv_is_dma_direct’中: ././common/inc/nv-linux.h:1234:9: 错误:implicit declaration of function ‘dma_is_direct’; did you mean ‘d_is_dir’? [-Wimplicit-function-declaration] 1234 | if (dma_is_direct(get_dma_ops(dev))) | ^~~~~~~~~~~~~ | d_is_dir cc1:有些警告被当作是错误 make[4]: *** [/usr/lib/modules/6.14.4-zen1-2-zen/build/scripts/Makefile.build:207:nvidia/nv-cray.o] 错误 1 nvidia/nv-acpi.c:644:22: 错误:implicit declaration of function ‘acpi_bus_get_device’; did you mean ‘acpi_is_pnp_device’? [-Wimplicit-function-declaration] 644 | retVal = acpi_bus_get_device(nvif_parent_gpu_handle, &device); | ^~~~~~~~~~~~~~~~~~~ | acpi_is_pnp_device cc1:有些警告被当作是错误 ././common/inc/nv-linux.h:331:6: 错误:‘NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT’ 未定义,计算结果为 ‘0’ [-Werror=undef] 331 | #if (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 6) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:333:8: 错误:‘NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT’ 未定义,计算结果为 ‘0’ [-Werror=undef] 333 | #elif (NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT == 7) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ././common/inc/nv-linux.h:339:2: 错误:#error "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT value unrecognized!" 339 | #error "NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT value unrecognized!" | ^~~~~ ././common/inc/nv-linux.h: 在函数‘nv_vmalloc’中: ././common/inc/nv-linux.h:521:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 521 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap’中: ././common/inc/nv-linux.h:535:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 535 | NV_MEMDBG_ADD(ptr, size); | ^ make[4]: *** [/usr/lib/modules/6.14.4-zen1-2-zen/build/scripts/Makefile.build:207:nvidia/nv-acpi.o] 错误 1 ././common/inc/nv-linux.h: 在函数‘nv_ioremap_cache’中: ././common/inc/nv-linux.h:549:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 549 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_ioremap_wc’中: ././common/inc/nv-linux.h:579:33: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 579 | NV_MEMDBG_ADD(ptr, size); | ^ ././common/inc/nv-linux.h: 在函数‘nv_vmap’中: ././common/inc/nv-linux.h:666:51: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 666 | NV_MEMDBG_ADD(ptr, page_count * PAGE_SIZE); | ^ ././common/inc/nv-linux.h: 在函数‘nv_phys_to_dma’中: ././common/inc/nv-linux.h:703:12: 错误:implicit declaration of function ‘phys_to_dma’; did you mean ‘nv_phys_to_dma’? [-Wimplicit-function-declaration] 703 | return phys_to_dma(dev, pa); | ^~~~~~~~~~~ | nv_phys_to_dma ././common/inc/nv-linux.h: 在函数‘nv_is_dma_direct’中: ././common/inc/nv-linux.h:1234:9: 错误:implicit declaration of function ‘dma_is_direct’; did you mean ‘d_is_dir’? [-Wimplicit-function-declaration] 1234 | if (dma_is_direct(get_dma_ops(dev))) | ^~~~~~~~~~~~~ | d_is_dir 包含于文件 /usr/lib/modules/6.14.4-zen1-2-zen/build/include/sound/hdaudio.h:18, 于 nvidia/nv.c:52: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/sound/pcm.h: 在函数‘snd_pcm_gettime’中: /usr/lib/modules/6.14.4-zen1-2-zen/build/include/sound/pcm.h:1292:32: 错误:传递‘ktime_get_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 1292 | ktime_get_ts64(tv); | ^~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:43:47: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 43 | extern void ktime_get_ts64(struct timespec64 *ts); | ~~~~~~~~~~~~~~~~~~~^~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/sound/pcm.h:1295:36: 错误:传递‘ktime_get_raw_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 1295 | ktime_get_raw_ts64(tv); | ^~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:42:51: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 42 | extern void ktime_get_raw_ts64(struct timespec64 *ts); | ~~~~~~~~~~~~~~~~~~~^~ /usr/lib/modules/6.14.4-zen1-2-zen/build/include/sound/pcm.h:1298:37: 错误:传递‘ktime_get_real_ts64’的第 1 个参数时在不兼容的指针类型间转换 [-Wincompatible-pointer-types] 1298 | ktime_get_real_ts64(tv); | ^~ | | | struct timespec64 * /usr/lib/modules/6.14.4-zen1-2-zen/build/include/linux/timekeeping.h:44:52: 附注:expected ‘struct timespec64 *’ but argument is of type ‘struct timespec64 *’ 44 | extern void ktime_get_real_ts64(struct timespec64 *tv); | ~~~~~~~~~~~~~~~~~~~^~ nvidia/nv.c: 在函数‘nvos_create_alloc’中: ././common/inc/nv-linux.h:607:37: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 607 | NV_MEMDBG_ADD(ptr, size); \ | ^ nvidia/nv.c:237:5: 附注:在宏 ‘NV_KMALLOC’ 展开时 237 | NV_KMALLOC(at, sizeof(nv_alloc_t)); | ^~~~~~~~~~ nvidia/nv.c: 在文件作用域: nvidia/nv.c:739:12: 警告:‘nvidia_init_module’先前没有原型 [-Wmissing-prototypes] 739 | int __init nvidia_init_module(void) | ^~~~~~~~~~~~~~~~~~ nvidia/nv.c:860:6: 警告:‘nvidia_exit_module’先前没有原型 [-Wmissing-prototypes] 860 | void nvidia_exit_module(void) | ^~~~~~~~~~~~~~~~~~ nvidia/nv.c: 在函数‘nv_alloc_file_private’中: ././common/inc/nv-linux.h:607:37: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 607 | NV_MEMDBG_ADD(ptr, size); \ | ^ nvidia/nv.c:884:5: 附注:在宏 ‘NV_KMALLOC’ 展开时 884 | NV_KMALLOC(nvlfp, sizeof(nv_linux_file_private_t)); | ^~~~~~~~~~ nvidia/nv.c: 在文件作用域: nvidia/nv.c:1263:23: 警告:‘nv_get_num_dpaux_instances’先前没有原型 [-Wmissing-prototypes] 1263 | NV_STATUS NV_API_CALL nv_get_num_dpaux_instances(nv_state_t *nv, NvU32 *num_instances) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ nvidia/nv.c: 在函数‘nvidia_ioctl’中: ././common/inc/nv-linux.h:607:37: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 607 | NV_MEMDBG_ADD(ptr, size); \ | ^ nvidia/nv.c:2192:5: 附注:在宏 ‘NV_KMALLOC’ 展开时 2192 | NV_KMALLOC(arg_copy, arg_size); | ^~~~~~~~~~ ././common/inc/nv-linux.h:607:37: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 607 | NV_MEMDBG_ADD(ptr, size); \ | ^ nvidia/nv.c:2253:13: 附注:在宏 ‘NV_KMALLOC’ 展开时 2253 | NV_KMALLOC(nvlfp->attached_gpus, arg_size); | ^~~~~~~~~~ nvidia/nv.c: 在函数‘nv_map_guest_pages’中: ././common/inc/nv-linux.h:607:37: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 607 | NV_MEMDBG_ADD(ptr, size); \ | ^ nvidia/nv.c:2895:5: 附注:在宏 ‘NV_KMALLOC’ 展开时 2895 | NV_KMALLOC(pages, sizeof(struct page *) * page_count); | ^~~~~~~~~~ nvidia/nv.c: 在函数‘nv_alloc_kernel_mapping’中: ././common/inc/nv-linux.h:607:37: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 607 | NV_MEMDBG_ADD(ptr, size); \ | ^ nvidia/nv.c:3354:13: 附注:在宏 ‘NV_KMALLOC’ 展开时 3354 | NV_KMALLOC(pages, sizeof(struct page *) * page_count); | ^~~~~~~~~~ nvidia/nv.c: 在函数‘nv_post_event’中: ././common/inc/nv-linux.h:614:37: 警告:建议在空的‘if’语句体周围加上花括号 [-Wempty-body] 614 | NV_MEMDBG_ADD(ptr, size); \ | ^ nvidia/nv.c:3612:9: 附注:在宏 ‘NV_KMALLOC_ATOMIC’ 展开时 3612 | NV_KMALLOC_ATOMIC(nvet, sizeof(nvidia_event_t)); | ^~~~~~~~~~~~~~~~~ nvidia/nv.c: 在文件作用域: nvidia/nv.c:3660:13: 警告:‘nv_firmware_path’先前没有原型 [-Wmissing-prototypes] 3660 | const char *nv_firmware_path( | ^~~~~~~~~~~~~~~~ nvidia/nv.c: 在函数‘nv_get_file_private’中: ././common/inc/nv-linux.h:1820:35: 错误:‘struct file’没有名为‘f_dentry’的成员 1820 | #define NV_FILE_INODE(file) (file)->f_dentry->d_inode | ^~ nvidia/nv.c:3714:26: 附注:在宏 ‘NV_FILE_INODE’ 展开时 3714 | if (filp == NULL || !NV_FILE_INODE(filp)) | ^~~~~~~~~~~~~ ././common/inc/nv-linux.h:1820:35: 错误:‘struct file’没有名为‘f_dentry’的成员 1820 | #define NV_FILE_INODE(file) (file)->f_dentry->d_inode | ^~ nvidia/nv.c:3719:13: 附注:在宏 ‘NV_FILE_INODE’ 展开时 3719 | rdev = (NV_FILE_INODE(filp))->i_rdev; | ^~~~~~~~~~~~~ nvidia/nv.c: 在函数‘nv_match_dev_state’中: ././common/inc/nv-linux.h:1820:35: 错误:‘struct file’没有名为‘f_dentry’的成员 1820 | #define NV_FILE_INODE(file) (file)->f_dentry->d_inode | ^~ nvidia/nv.c:5403:9: 附注:在宏 ‘NV_FILE_INODE’ 展开时 5403 | NV_FILE_INODE(filp) == NULL) | ^~~~~~~~~~~~~ ././common/inc/nv-linux.h:1820:35: 错误:‘struct file’没有名为‘f_dentry’的成员 1820 | #define NV_FILE_INODE(file) (file)->f_dentry->d_inode | ^~ nvidia/nv.c:5406:13: 附注:在宏 ‘NV_FILE_INODE’ 展开时 5406 | rdev = (NV_FILE_INODE(filp))->i_rdev; | ^~~~~~~~~~~~~ cc1:有些警告被当作是错误 make[4]: *** [/usr/lib/modules/6.14.4-zen1-2-zen/build/scripts/Makefile.build:207:nvidia/nv.o] 错误 1 make[3]: *** [/usr/lib/modules/6.14.4-zen1-2-zen/build/Makefile:1994:.] 错误 2 make[2]: *** [/usr/lib/modules/6.14.4-zen1-2-zen/build/Makefile:251:__sub-make] 错误 2 make[2]: 离开目录“/var/lib/dkms/nvidia/470.256.02/build” make[1]: *** [Makefile:251:__sub-make] 错误 2 make[1]: 离开目录“/usr/lib/modules/6.14.4-zen1-2-zen/build” make: *** [Makefile:80:modules] 错误 2 # exit code: 2 # elapsed time: 00:00:59 ----------------------------------------------------------------