Topaz mistakenly reported as vf
José Pekkarinen
jose.pekkarinen at canonical.com
Tue Dec 19 07:12:25 UTC 2017
On Sunday, 17 December 2017 21:20:49 EET José Pekkarinen wrote:
> Hi,
>
> I hit an issue that seems to be a topaz discrete vga reporting it's a
> virtual function when my laptop is running on the battery. I received the
> following bactrace:
>
> Dec 17 11:17:28 bee kernel: [ 31.976810] kernel BUG at
> drivers/gpu/drm/amd/ amdgpu/mxgpu_vi.c:310!
> Dec 17 11:17:28 bee kernel: [ 31.976815] invalid opcode: 0000 [#1] SMP
> Dec 17 11:17:28 bee kernel: [ 31.976831] Modules linked in: vfio_pci
> vfio_virqfd udl loop bfq arc4 iwlmvm mac80211 kvmgt vfio_mdev amdgpu(+) mdev
> vfio_iommu_type1 vfio i915 uvcvideo x86_pkg_temp_thermal videobuf2_vmalloc
> videobuf2_memo
> ps videobuf2_v4l2 intel_powerclamp videobuf2_core coretemp videodev
> kvm_intel kvm i2c_algo_bit rtsx_pci_sdmmc drm_kms_helper joydev mmc_core
> media mousedev rtsx_pci_ms btusb btrtl btbcm memstick ttm drm wmi_bmof
> hci_uart btintel bluetoot
> h iwlwifi snd_hda_intel snd_hda_codec cfg80211 irqbypass crc32c_intel
> ghash_clmulni_intel intel_cstate snd_hwdep intel_uncore snd_hda_core psmouse
> intel_rapl_perf rtsx_pci snd_pcm efi_pstore evdev ideapad_laptop ac
> input_leds serio_raw e
> fivars sparse_keymap intel_lpss_acpi battery thermal ecdh_generic wmi fan
> syscopyarea snd_timer sysfillrect snd rfkill intel_lpss
> Dec 17 11:17:28 bee kernel: [ 31.977023] video sysimgblt tpm_crb
> soundcore button mfd_core i2c_hid i2c_i801 fb_sys_fops backlight acpi_pad
> efivarfs unix dm_zero dm_thin_pool dm_persistent_data dm_bio_prison
> dm_service_time dm_round_ro
> bin dm_queue_length dm_multipath dm_log_userspace cn dm_flakey dm_delay xts
> aesni_intel crypto_simd cryptd glue_helper aes_x86_64 cbc sha256_generic
> scsi_transport_iscsi r8169 mii fuse xfs nfs lockd grace sunrpc fscache ext4
> mbcache jbd2
> multipath linear raid10 raid1 raid0 dm_raid raid456 md_mod
> async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq
> libcrc32c dm_snapshot dm_bufio dm_crypt dm_mirror dm_region_hash dm_log
> dm_mod dax hid_generic usbhid xhc
> i_pci xhci_hcd ohci_hcd uhci_hcd usb_storage ehci_pci ehci_hcd usbcore
> usb_common scsi_transport_fc sr_mod cdrom sg sd_mod ata_piix
> Dec 17 11:17:28 bee kernel: [ 31.977223] ahci libahci sata_sx4
> pata_oldpiix Dec 17 11:17:28 bee kernel: [ 31.977239] CPU: 0 PID: 3698
> Comm: udevd Not tainted 4.14.5 #10
> Dec 17 11:17:28 bee kernel: [ 31.977255] Hardware name: LENOVO 80UV/Lenovo
> ideapad 510S-14IKB, BIOS 2SCN21WW(V2.01) 12/20/2016
> Dec 17 11:17:28 bee kernel: [ 31.977278] task: ffff880358b54280
> task.stack: ffffc900014dc000
> Dec 17 11:17:28 bee kernel: [ 31.977323] RIP:
> 0010:xgpu_vi_init_golden_registers+0x56/0xa0 [amdgpu]
> Dec 17 11:17:28 bee kernel: [ 31.977341] RSP: 0018:ffffc900014dfa08
> EFLAGS: 00010293
> Dec 17 11:17:28 bee kernel: [ 31.977356] RAX: 000000000000000a RBX:
> ffff880340040000 RCX: 0000000000000000
> Dec 17 11:17:28 bee kernel: [ 31.977375] RDX: ffff880358b54280 RSI:
> 0000000000000100 RDI: ffff880340040000
> Dec 17 11:17:28 bee kernel: [ 31.977394] RBP: ffffc900014dfa10 R08:
> ffff88033c6dd198 R09: 0000000000000000
> Dec 17 11:17:28 bee kernel: [ 31.977413] R10: ffff880352c0aaa0 R11:
> 0000000000000008 R12: ffff880340040458
> Dec 17 11:17:28 bee kernel: [ 31.977432] R13: 0000000000000000 R14:
> 0000000000000000 R15: ffff880340040000
> Dec 17 11:17:28 bee kernel: [ 31.977452] FS: 00007fbfdd8c0780(0000)
> GS:ffff88046ec00000(0000) knlGS:0000000000000000
> Dec 17 11:17:28 bee kernel: [ 31.977474] CS: 0010 DS: 0000 ES: 0000 CR0:
> 0000000080050033
> Dec 17 11:17:28 bee kernel: [ 31.977490] CR2: 000055c3b48c1408 CR3:
> 0000000358307003 CR4: 00000000003606f0
> Dec 17 11:17:28 bee kernel: [ 31.977527] Call Trace:
> Dec 17 11:17:28 bee kernel: [ 31.977555] vi_common_hw_init+0x77/0xe0
> [amdgpu]
> Dec 17 11:17:28 bee kernel: [ 31.977584] amdgpu_device_init+0xc4b/0x14b0
> [amdgpu]
> Dec 17 11:17:28 bee kernel: [ 31.977601] ? kmem_cache_alloc_trace
> +0x208/0x250
> Dec 17 11:17:28 bee kernel: [ 31.977629] ? amdgpu_driver_load_kms+0x2a/
> 0x1b0 [amdgpu]
> Dec 17 11:17:28 bee kernel: [ 31.977658]
> amdgpu_driver_load_kms+0x4f/0x1b0 [amdgpu]
> Dec 17 11:17:28 bee kernel: [ 31.977682] drm_dev_register+0x146/0x1d0
> [drm] Dec 17 11:17:28 bee kernel: [ 31.977710]
> amdgpu_pci_probe+0x118/0x140 [amdgpu]
> Dec 17 11:17:28 bee kernel: [ 31.977725] pci_device_probe+0xcf/0x150
> Dec 17 11:17:28 bee kernel: [ 31.977739] driver_probe_device+0x29c/0x450
> Dec 17 11:17:28 bee kernel: [ 31.977753] __driver_attach+0xdf/0xf0
> Dec 17 11:17:28 bee kernel: [ 31.978775] ?
> driver_probe_device+0x450/0x450 Dec 17 11:17:28 bee kernel: [ 31.979815]
> bus_for_each_dev+0x60/0xa0 Dec 17 11:17:28 bee kernel: [ 31.980882]
> driver_attach+0x1e/0x20 Dec 17 11:17:28 bee kernel: [ 31.981931]
> bus_add_driver+0x170/0x260 Dec 17 11:17:28 bee kernel: [ 31.982977]
> driver_register+0x60/0xe0 Dec 17 11:17:28 bee kernel: [ 31.984033]
> __pci_register_driver+0x5a/0x60 Dec 17 11:17:28 bee kernel: [ 31.985089]
> amdgpu_init+0x88/0x9b [amdgpu] Dec 17 11:17:28 bee kernel: [ 31.986146]
> ? 0xffffffffa0c51000
> Dec 17 11:17:28 bee kernel: [ 31.987192] do_one_initcall+0x52/0x190
> Dec 17 11:17:28 bee kernel: [ 31.988229] ? kmem_cache_alloc_trace
> +0x208/0x250
> Dec 17 11:17:28 bee kernel: [ 31.989270] ? do_init_module+0x27/0x202
> Dec 17 11:17:28 bee kernel: [ 31.990308] ? do_init_module+0x27/0x202
> Dec 17 11:17:28 bee kernel: [ 31.991383] do_init_module+0x5f/0x202
> Dec 17 11:17:28 bee kernel: [ 31.992396] load_module+0x1511/0x1740
> Dec 17 11:17:28 bee kernel: [ 31.993433] SyS_finit_module+0xc1/0x100
> Dec 17 11:17:28 bee kernel: [ 31.994478] ? SyS_finit_module+0xc1/0x100
> Dec 17 11:17:28 bee kernel: [ 31.995505] do_syscall_64+0x66/0x1a0
> Dec 17 11:17:28 bee kernel: [ 31.996556] entry_SYSCALL64_slow_path
> +0x25/0x25
> Dec 17 11:17:28 bee kernel: [ 31.997616] RIP: 0033:0x7fbfdcfd68f9
> Dec 17 11:17:28 bee kernel: [ 31.998643] RSP: 002b:00007ffd31e4f848
> EFLAGS: 00000246 ORIG_RAX: 0000000000000139
> Dec 17 11:17:28 bee kernel: [ 31.999659] RAX: ffffffffffffffda RBX:
> 000055e4a76c8430 RCX: 00007fbfdcfd68f9
> Dec 17 11:17:28 bee kernel: [ 32.000689] RDX: 0000000000000000 RSI:
> 00007fbfdd2a4565 RDI: 000000000000000e
> Dec 17 11:17:28 bee kernel: [ 32.001736] RBP: 00007fbfdd2a4565 R08:
> 0000000000000000 R09: 00007ffd31e4f9c0
> Dec 17 11:17:28 bee kernel: [ 32.002813] R10: 000000000000000e R11:
> 0000000000000246 R12: 0000000000000000
> Dec 17 11:17:28 bee kernel: [ 32.003862] R13: 000055e4a76d6710 R14:
> 0000000000020000 R15: 000055e4a741b8e9
> Dec 17 11:17:28 bee kernel: [ 32.004906] Code: 48 89 df ba 4b 00 00 00 48
> c7 c6 60 62 13 a1 e8 11 b7 fc ff 48 89 df ba 1e 00 00 00 48 c7 c6 e0 61 13
> a1 e8 fd b6 fc ff 5b 5d c3 <0f> 0b ba 05 01 00 00 48 c7 c6 c0 5d 13 a1 e8
> e7 b6 fc ff 48 89
> Dec 17 11:17:28 bee kernel: [ 32.006061] RIP:
> xgpu_vi_init_golden_registers +0x56/0xa0 [amdgpu] RSP: ffffc900014dfa08
> Dec 17 11:17:28 bee kernel: [ 32.007226] ---[ end trace eb52a49a747a04be
> ]---
>
> Which in the end means we got to the following BUG_ON on
> xgpu_vi_init_golden_registers:
>
> BUG_ON("Doesn't support chip type.\n");
>
> Following the path in vi_init_golden_registers:
>
> if (amdgpu_sriov_vf(adev)) {
> xgpu_vi_init_golden_registers(adev);
> mutex_unlock(&adev->grbm_idx_mutex);
> return;
> }
>
> System is using the following kernel and cpu:
>
> $ uname -a
> Linux bee 4.14.5 #10 SMP Wed Dec 13 12:07:06 EET 2017 x86_64 Intel(R)
> Core(TM) i7-7500U CPU @ 2.70GHz GenuineIntel GNU/Linux
>
> And the graphic card is the following:
>
> # lspci -vvvs 01:00.0
> 01:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Topaz XT
> [Radeon R7 M260/M265 / M340/M360 / M440/M445] (rev 81)
> Subsystem: Lenovo Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/
> M445]
> Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
> Stepping- SERR- FastB2B- DisINTx+
> Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
> <TAbort- <MAbort- >SERR- <PERR- INTx-
> Latency: 0, Cache Line Size: 64 bytes
> Interrupt: pin A routed to IRQ 128
> Region 0: Memory at a0000000 (64-bit, prefetchable) [size=256M]
> Region 2: Memory at b0000000 (64-bit, prefetchable) [size=2M]
> Region 4: I/O ports at 4000 [size=256]
> Region 5: Memory at b2300000 (32-bit, non-prefetchable) [size=256K]
> Expansion ROM at b2340000 [disabled] [size=128K]
> Capabilities: [48] Vendor Specific Information: Len=08 <?>
> Capabilities: [50] Power Management version 3
> Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
> PME(D0-,D1-,D2-,D3hot-,D3cold-)
> Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
> Capabilities: [58] Express (v2) Legacy Endpoint, MSI 00
> DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s <4us,
> L1 unlimited
> ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
> DevCtl: Report errors: Correctable- Non-Fatal- Fatal-
> Unsupported-
> RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+
> MaxPayload 256 bytes, MaxReadReq 512 bytes
> DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr-
> TransPend-
> LnkCap: Port #0, Speed 8GT/s, Width x8, ASPM L0s L1, Exit
> Latency L0s <64ns, L1 <1us
> ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
> LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+
> ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
> LnkSta: Speed 2.5GT/s, Width x4, TrErr- Train- SlotClk+
> DLActive- BWMgmt- ABWMgmt-
> DevCap2: Completion Timeout: Not Supported, TimeoutDis-,
> LTR-, OBFF Not Supported
> DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-,
> LTR-, OBFF Disabled
> LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance-
> SpeedDis- Transmit Margin: Normal Operating Range,
> EnterModifiedCompliance- ComplianceSOS-
> Compliance De-emphasis: -6dB
> LnkSta2: Current De-emphasis Level: -3.5dB,
> EqualizationComplete+, EqualizationPhase1+
> EqualizationPhase2+, EqualizationPhase3+,
> LinkEqualizationRequest-
> Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
> Address: 00000000fee00338 Data: 0000
> Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1
> Len=010 <?>
> Capabilities: [150 v2] Advanced Error Reporting
> UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt-
> RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
> UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt-
> RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
> UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt-
> RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
> CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout-
> NonFatalErr-
> CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout-
> NonFatalErr +
> AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+
> ChkEn-
> Capabilities: [270 v1] #19
> Capabilities: [2b0 v1] Address Translation Service (ATS)
> ATSCap: Invalidate Queue Depth: 00
> ATSCtl: Enable-, Smallest Translation Unit: 00
> Capabilities: [2c0 v1] Page Request Interface (PRI)
> PRICtl: Enable- Reset-
> PRISta: RF- UPRGI- Stopped+
> Page Request Capacity: 00000020, Page Request Allocation:
> 00000000
> Capabilities: [2d0 v1] Process Address Space ID (PASID)
> PASIDCap: Exec+ Priv+, Max PASID Width: 10
> PASIDCtl: Enable- Exec- Priv-
> Kernel driver in use: amdgpu
> Kernel modules: amdgpu
>
> Funny thing is that I can boot the machine properly when not running on
> the battery, so either this seems to be a problem in the firmware, or in the
> way acpi interacts with the driver.
>
> Any help, or ideas are appreciated.
>
> José.
Adding Alex and Christian.
Best regards.
José
More information about the amd-gfx
mailing list