수정 여부에 관계없이 Linux 커널을 다시 컴파일하려고 시도했지만 오류가 항상 나타납니다. LightDM 사용: 시스템 로드 모듈이 nvidia-nvsm을 찾을 수 없음 SDDM 사용: 파이프에서 숫자를 읽을 수 없음
나는 리눅스에 대해 잘 모르기 때문에 여기 튜토리얼을 따랐습니다. https://wiki.archlinux.org/title/Kernel/Traditional_compilation
Arch 설치에는 archinstall만 사용했고 Budgie(LightDM)와 KDE Plasma(SDDM)를 사용해 보았습니다. nvidia 대신 nvidia-dkms를 사용해 보았지만 여전히 성공하지 못했습니다. 로그를 제공할 수 있으면 알려주시기 바랍니다.
저는 Arch 5.19-rc6과 nvidia-dkms를 사용하고 있습니다. (오류는 자체 컴파일된 모든 커널에서 동일합니다.)
lsmod | grep 엔비디아 출력:
nvidia_modeset 1425408 19 nvidia_drm
nvidia_uvm 2740224 0
nvidia 45367296 1139 nvidia_uvm,nvidia_modeset
시작 로그는 다음과 같습니다.https://pastebin.com/ecQGxW8x Journalctl: -p 3 -xb를 실행할 때 다음과 같은 오류가 발생합니다.
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.SADX], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.SADS], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.RDLY], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14._DSM], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.BTRT], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14._PRR], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.BRDY], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.BRDS], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.ECKY], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.ECKV], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.GPCX], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.GPC], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.BTLY], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS14.BTLC], AE_ALREADY_EXISTS (20220331/dswload2-326)
Jul 12 13:19:54 jenusis kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20220331/psobject-220)
Jul 12 13:19:54 jenusis systemd-modules-load[441]: Failed to find module 'nvidia-uvm'
Jul 12 13:19:59 jenusis sddm[553]: Failed to read display number from pipe
Jul 12 13:20:01 jenusis kernel: Bluetooth: hci0: Malformed MSFT vendor event: 0x02
Jul 12 13:20:01 jenusis sddm[553]: Failed to read display number from pipe
Jul 12 13:20:04 jenusis sddm[553]: Failed to read display number from pipe
Jul 12 13:20:04 jenusis sddm[553]: Could not start Display server on vt 1
내가 아는 한, 첫 번째 오류는 중요하지 않습니다. 문제는 다음과 같습니다: systemd-modules-load[441]: 'nvidia-uvm' 모듈을 찾을 수 없습니다.
modinfo nvidia-uvm을 실행하면 다음과 같은 메시지가 나타납니다.
modinfo nvidia-uvm
filename: /lib/modules/5.18.10-arch1-1/updates/dkms/nvidia-uvm.ko.zst
supported: external
license: Dual MIT/GPL
srcversion: 3170E1233D7C787ABE15CDF
depends: nvidia
retpoline: Y
name: nvidia_uvm
vermagic: 5.18.10-arch1-1 SMP preempt mod_unload
parm: uvm_ats_mode:Set to 0 to disable ATS (Address Translation Services). Any other value is ignored. Has no effect unless the platform supports ATS. (int)
parm: uvm_perf_prefetch_enable:uint
parm: uvm_perf_prefetch_threshold:uint
parm: uvm_perf_prefetch_min_faults:uint
parm: uvm_perf_thrashing_enable:uint
parm: uvm_perf_thrashing_threshold:uint
parm: uvm_perf_thrashing_pin_threshold:uint
parm: uvm_perf_thrashing_lapse_usec:uint
parm: uvm_perf_thrashing_nap:uint
parm: uvm_perf_thrashing_epoch:uint
parm: uvm_perf_thrashing_pin:uint
parm: uvm_perf_thrashing_max_resets:uint
parm: uvm_perf_map_remote_on_native_atomics_fault:uint
parm: uvm_disable_hmm:Force-disable HMM functionality in the UVM driver. Default: false (i.e, HMM is potentially enabled). Ignored if HMM is not supported in the driver, or if ATS settings conflict with HMM. (bool)
parm: uvm_perf_migrate_cpu_preunmap_enable:int
parm: uvm_perf_migrate_cpu_preunmap_block_order:uint
parm: uvm_global_oversubscription:Enable (1) or disable (0) global oversubscription support. (int)
parm: uvm_perf_pma_batch_nonpinned_order:uint
parm: uvm_cpu_chunk_allocation_sizes:OR'ed value of all CPU chunk allocation sizes. (uint)
parm: uvm_leak_checker:Enable uvm memory leak checking. 0 = disabled, 1 = count total bytes allocated and freed, 2 = per-allocation origin tracking. (int)
parm: uvm_force_prefetch_fault_support:uint
parm: uvm_debug_enable_push_desc:Enable push description tracking (uint)
parm: uvm_debug_enable_push_acquire_info:Enable push acquire information tracking (uint)
parm: uvm_page_table_location:Set the location for UVM-allocated page tables. Choices are: vid, sys. (charp)
parm: uvm_perf_access_counter_mimc_migration_enable:Whether MIMC access counters will trigger migrations.Valid values: <= -1 (default policy), 0 (off), >= 1 (on) (int)
parm: uvm_perf_access_counter_momc_migration_enable:Whether MOMC access counters will trigger migrations.Valid values: <= -1 (default policy), 0 (off), >= 1 (on) (int)
parm: uvm_perf_access_counter_batch_count:uint
parm: uvm_perf_access_counter_granularity:Size of the physical memory region tracked by each counter. Valid values asof Volta: 64k, 2m, 16m, 16g (charp)
parm: uvm_perf_access_counter_threshold:Number of remote accesses on a region required to trigger a notification.Valid values: [1, 65535] (uint)
parm: uvm_perf_reenable_prefetch_faults_lapse_msec:uint
parm: uvm_perf_fault_batch_count:uint
parm: uvm_perf_fault_replay_policy:uint
parm: uvm_perf_fault_replay_update_put_ratio:uint
parm: uvm_perf_fault_max_batches_per_service:uint
parm: uvm_perf_fault_max_throttle_per_service:uint
parm: uvm_perf_fault_coalesce:uint
parm: uvm_fault_force_sysmem:Force (1) using sysmem storage for pages that faulted. Default: 0. (int)
parm: uvm_perf_map_remote_on_eviction:int
parm: uvm_exp_gpu_cache_peermem:Force caching for mappings to peer memory. This is an experimental parameter that may cause correctness issues if used. (uint)
parm: uvm_exp_gpu_cache_sysmem:Force caching for mappings to system memory. This is an experimental parameter that may cause correctness issues if used. (uint)
parm: uvm_channel_num_gpfifo_entries:uint
parm: uvm_channel_gpfifo_loc:charp
parm: uvm_channel_gpput_loc:charp
parm: uvm_channel_pushbuffer_loc:charp
parm: uvm_enable_va_space_mm:Set to 0 to disable UVM from using mmu_notifiers to create an association between a UVM VA space and a process. This will also disable pageable memory access via either ATS or HMM. (int)
parm: uvm_enable_debug_procfs:Enable debug procfs entries in /proc/driver/nvidia-uvm (int)
parm: uvm_peer_copy:Choose the addressing mode for peer copying, options: phys [default] or virt. Valid for Ampere+ GPUs. (charp)
parm: uvm_debug_prints:Enable uvm debug prints. (int)
parm: uvm_enable_builtin_tests:Enable the UVM built-in tests. (This is a security risk) (int)
모듈 폴더에 있다고 나와 있지만 5.18.10-arch1-1 폴더에 어떻게든 새 커널로 nvidia-uvm을 찾을 수 있도록 해야 한다고 확신하지만 방법을 모르겠습니다.
답변1
해결 방법은 nvidia-dkms를 제거하고 시스템에 커널이 설치된 후 설치하는 것입니다.