[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
I've reproduced the issue on Piledriver platform with AMD 9590 CPU, with both ATI and Nvidia PCI GPUs. With the ATI GPU, I get the usual symptom of the computer freezing display while the GNOME desktop is partially loaded. It's possible to open a TTY console by switching consoles but once returned to the graphical desktop, the computer becomes definitely unresponsive. This is similar to what is seen on older hardware like K10 or K8 platforms. With the Nvidia GPUs, I get garbage (we can even notice some parts of the GNOME desktop), and the computer is unresponsive. Sometime the display is lost then returns and it cycles like that. This is the usual symptom seen on older hardware like K10 and K8 platforms. ** Attachment added: "Screenshot of graphical issues on Nvidia Geforce 8400GS rev.2 PCI on Piledriver PCIe host" https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+attachment/5432604/+files/20201109-110741-000.nvidia-geforce-8400gsr2-pci+piledriver.jpg ** Summary changed: - PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 + PCI graphics broken on AMD K8/K10/Piledriver platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10/Piledriver platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
See patch and comments on https://lkml.org/lkml/2020/11/5/307 Patch was rewritten in a way the message is shorter and comment uses better language. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
** Description changed: - This is an issue I found while investigating #1899304 + This is an issue I faced before #1899304 but becomes more critical with https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1899304 The big concern is that if AGP is disabled, there is no fallback display option on those platforms. After having discovered some K8 and K10 computers running AGP cards stopped working with 5.4.0-48 (Ubuntu 20.04 LTS), I had the idea to try some PCI cards to know if problems came from AGP or something else, and I've discovered another issue instead. Note that I'm not talking about PCI express, but good old PCI. The other issue I found is that PCI graphics on AMD K8/K10 platform is broken since years. This got probably unnoticed because such hardware works on Intel platform and those cards are not very common, so the chance to fulfill all the requirements to reproduce the bug are not that high. To make the test significant enough I used two PCI devices from two makers, and some that are not so old: they both support OpenGL 3.3, have 512MB of VRAM, and one of them even have HDMI. - PCI ATI Radeon HD 4350 (RV710, Terascale 1), HDMI + DVI-I + VGA - PCI Nvidia Geforce 8400 GS rev.2 (NV98, Tesla 1.0), DVI-I + VGA I've driven tests on four computers: - K10 PCIe based: Dell Optiplex 740 motherboard with AMD Athlon 64 X2 CPU (dual core), Nvidia C51 bridge, 6GB DDR2 667MHz, PCIe + PCI - K8 AGP based: ASRock AM2NF3-VSTA motherboard with AMD Phenom II X4 970 CPU (quad core), Nvidia nForce3 bridge, 16GB DDR2 800MHz, AGP + PCI - K8 AGP based: MSI MS-6702E motherboard with AMD Athlon 64 3200+ CPU (single core), VIA K8T800Pro, VT8237/8251 bridge, 3GB DDR 400MHz, AGP + PCI - Intel PCIe based: Lenovo ThinkCentre M58 motherboard with Pentium E5200 CPU (dual core), Intel 82801 PCI Bridge, 1GB DDR2 800MHz, PCIe + PCI Both PCI GPU work on the Intel based computer, and I get performances that looks correct for those GPU given they are PCI ones. You can find real-life use case test result here (look for “PCI”): https://wiki.unvanquished.net/wiki/GPU_compatibility_matrix I tested two Ubuntu versions and multiple kernels: Ubuntu 20.04 Focal LTS Linux 5.4.0-48-generic Ubuntu 20.04 Focal LTS Linux 5.4.0-47-generic Ubuntu 16.04 Xenial LTS Linux 4.15.0-118-generic Ubuntu 16.04 Xenial LTS Linux 4.8.0-36-generic Ubuntu 16.04 Xenial LTS Linux 4.4.0-190-generic All those configurations fail with those two PCI GPUs on AMD K8/K10 platforms. I got some logs and screenshots, so I will add them. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
** Tags added: amd64 focal ** Tags added: kernel-bug ** Tags added: xenial -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
** Tags added: patch -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
Just a reupload of the previously posted patch, fixing some typos. ** Patch removed: "PATCH: drm/radeon: make all PCI GPUs use 32 bits DMA bit mask (not enough to fix the issue and ATI specific)" https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+attachment/5431266/+files/0001-drm-radeon-make-all-PCI-GPUs-use-32bits-DMA-bit-mask.patch ** Patch added: "PATCH: drm/radeon: make all PCI GPUs use 32 bits DMA bit mask (not enough to fix the issue and ATI specific)" https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+attachment/5431335/+files/0001-drm-radeon-make-all-PCI-GPUs-use-32bits-DMA-bit-mask.patch -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
Here is a dmesg log from september, running the PCI Nvidia 8400GS rev.2 with nouveau on a K8 non-AGP host with Nvidia C51 PCI Express bridge. The GPU is driven by proprietary non-free closed nvidia driver. Yet again, this PCI GPU is known to work with nvidia driver when plugged into an Intel platform. Here may be the interesting parts: ``` [ 76.927044] NVRM: GPU at PCI::05:00: GPU-d18ccf5d-6557-e114-0ca8-23449bccf157 [ 76.927050] NVRM: Xid (PCI::05:00): 6, PE0002 [ 78.018458] NVRM: Xid (PCI::05:00): 8, Channel 0001 [ 80.010804] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 82.017647] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 90.401898] NVRM: Xid (PCI::05:00): 8, Channel 007e [ 92.385614] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 96.321610] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 106.785733] NVRM: Xid (PCI::05:00): 8, Channel 007e [ 108.785676] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 112.785766] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 123.169763] NVRM: Xid (PCI::05:00): 8, Channel 007e [ 125.153618] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 129.153612] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 138.079318] resource sanity check: requesting [mem 0x000c-0x000f], which spans more than pnp 00:06 [mem 0x000ce000-0x000c] [ 138.079726] caller os_map_kernel_space+0x6d/0xb0 [nvidia] mapping multiple BARs [ 145.569349] NVRM: GPU at PCI::05:00: GPU-d18ccf5d-6557-e114-0ca8-23449bccf157 [ 145.569386] NVRM: Xid (PCI::05:00): 6, PE0002 [ 146.689722] NVRM: Xid (PCI::05:00): 8, Channel 0001 [ 148.689670] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 150.690247] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 159.009723] NVRM: Xid (PCI::05:00): 8, Channel 007e [ 161.009666] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 165.009757] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 175.393763] NVRM: Xid (PCI::05:00): 8, Channel 007e [ 177.393696] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 181.393788] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 191.61] NVRM: Xid (PCI::05:00): 8, Channel 007e [ 193.505609] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context [ 197.717628] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context ``` Note that there is two things you can ignore from this log, this part: ``` [ 47.301362] NVRM: The NVIDIA GeForce 6150 LE GPU installed in this system is NVRM: supported through the NVIDIA 304.xx Legacy drivers. Please NVRM: visit http://www.nvidia.com/object/unix.html for more NVRM: information. The 340.108 NVIDIA driver will ignore NVRM: this GPU. Continuing probe... [ 47.301582] NVRM: ignoring the legacy GPU :00:05.0 [ 47.302069] nvidia: probe of :00:05.0 failed with error -1 ``` This motherboard features an onboard soldered Geforce 6150 LE GPU usually accessed through HyperTransport bus when there is no add-on card on PCIe slots. The BIOS is expected to disable the onboard GPU when there is an add-on one, and it usually disables that onboard GPU when there is an add-on one (usually on PCI Express port), except when this Nvidia PCI card is plugged. Anyway, the driver ignores it. The part that can be ignored is this one: ``` [ 55.661641] NVRM: Your system is not currently configured to drive a VGA console [ 55.661645] NVRM: on the primary VGA device. The NVIDIA Linux graphics driver [ 55.661646] NVRM: requires the use of a text-mode VGA console. Use of other console [ 55.661648] NVRM: drivers including, but not limited to, vesafb, may result in [ 55.661648] NVRM: corruption and stability problems, and is not supported. ``` It's a warning the proprietary non-free closed driver is printing to ask the user to plug an useless screen on the VGA port (that will not be able to display anything and will not be made available to the user to extend the desktop) so the user can use a screen on the DVI port properly. This is just an Nvidia weirdness among **many**, and this has nothing to do with the current bug, this weirdness can be experimented with select other Nvidias GPU including PCIe ones that work on this host and on others. The nouveau driver does not ask to plug the VGA to an useless screen to use the DVI port correctly,
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
Here is a dmesg log from september, running the PCI Nvidia 8400GS rev.2 with nouveau on a K8 non-AGP host with Nvidia C51 PCI Express bridge. The GPU is driven by nouveau. So at this time I at least managed to connect through SSH while there was no display. The dmesg log reports a GPU lockup. Yet again, this PCI GPU is known to work with nouveau driver when plugged into an Intel platform. Here may be the interesting parts: ``` [ 52.256093] nouveau :05:00.0: DRM: core notifier timeout [ 54.256228] nouveau :05:00.0: DRM: base-0: timeout [ 54.256455] Console: switching to colour frame buffer device 240x67 [ 54.256542] nouveau :05:00.0: fifo: DMA_PUSHER - ch 1 [DRM] get 00 put 00 ib_get 0002 ib_put 0003 state a000 (err: IB_EMPTY) push 00406040 [ 54.256633] nouveau :05:00.0: fifo: DMA_PUSHER - ch 1 [DRM] get 00 put 00 ib_get 0003 ib_put 0011 state a000 (err: IB_EMPTY) push 00406040 [ 54.256687] nouveau :05:00.0: fifo: DMA_PUSHER - ch 1 [DRM] get 00 put 00 ib_get 0011 ib_put 0020 state a000 (err: IB_EMPTY) push 003020b0 [ 54.256740] nouveau :05:00.0: fifo: DMA_PUSHER - ch 1 [DRM] get 00 put 00 ib_get 0020 ib_put 0033 state a000 (err: IB_EMPTY) push 00406040 [ 54.256811] nouveau :05:00.0: fifo: DMA_PUSHER - ch 1 [DRM] get 00 put 00 ib_get 0033 ib_put 0049 state a000 (err: IB_EMPTY) push 003020b0 [ 54.725747] nouveau :05:00.0: DRM: GPU lockup - switching to software fbcon [ 54.808979] nouveau :05:00.0: fb0: nouveaudrmfb frame buffer device [ 54.809352] [drm] Initialized nouveau 1.3.1 20120801 for :05:00.0 on minor 1 ``` ** Attachment added: "dmesg on Linux 5.4.0-47-generic, K8 platform (PCIe host, C51 bridge), Nvidia 8400GS rev.2 PCI with nouveau" https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+attachment/5431331/+files/dmesg.linux-5.4.0-47.Dell_OptiPlex_740+K8-C51_Nvidia-8400GSr2_PCI-nouveau.txt -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
** Attachment added: "dmesg on Linux 5.8 vanilla on K10 host running the HD 4350 PCI GPU" https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+attachment/5431287/+files/dmesg.linux-5.8-vanilla_ASRock-AM2NF3-VSTA+K10_ATI-Radeon-HD-4350-PCI.txt -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
** Attachment added: "dmesg on Linux 5.8 with 32bit dma patch on K10 host running the HD 4350 PCI GPU, demonstrating some errors being workarounded (not all)" https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+attachment/5431288/+files/dmesg.linux-5.8-dma32fix_ASRock-AM2NF3-VSTA+K10_ATI-Radeon-HD-4350-PCI.txt -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
I noticed a similar bug was reported on 3.2 kernel in year 2012: https://bugzilla.redhat.com/show_bug.cgi?id=785375 At the time the bug was fixed by switching the PCI DMA bit mask from 40-bits to 32-bits: https://bugzilla.redhat.com/attachment.cgi?id=603278 The initial patch was testing against the GPU chip family, but that seems wrong because now we see the same GPUs working with 40-bits mask on some Intel platforms and not on some AMD platforms. This patch makes all PCI GPU use 32-bit masks. This is expected to be non-optimal platforms supporting 40-bits DMA masks, but is safest. An alternative would be to test against the platforms. This patch is not enough to fix PCI GPUs working on K8 and K10 platforms, also, this patch only concern Radeon hardware, while Nvidia hardware are both affected on those platforms (both running nouveau or nvidia). This patch makes enough to workaround this error on ATI PCI devices on K10: ``` [drm:r600_ring_test [radeon]] *ERROR* radeon: ring 0 test failed (scratch(0x8504)=0xCAFEDEAD) radeon :03:00.0: disabling GPU acceleration ``` And this one on both ATI PCI devices on K10 and ATI AGP devices on Linux 5.9 (AGP disabled?): ``` trying to bind memory to uninitialized GART ! ``` This is not enough to fix PCI GPUs on K8 (K8T800) and K10 (nForce3), also, non-ATI Nvidia PCI GPUs are affected by at least one other bug that may be in common. This is not a call to disable AGP, and other bug(s) left such AGP hardware unusable once AGP is disabled. This patch has been written against Linux 5.8 vanilla but applies correctly on on 5.9 and 5.10-rc2. ** Bug watch added: Red Hat Bugzilla #785375 https://bugzilla.redhat.com/show_bug.cgi?id=785375 ** Patch added: "PATCH: drm/radeon: make all PCI GPUs use 32 bits DMA bit mask (not enough to fix the issue and ATI specific)" https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+attachment/5431266/+files/0001-drm-radeon-make-all-PCI-GPUs-use-32bits-DMA-bit-mask.patch -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
** Changed in: linux (Ubuntu) Status: Incomplete => Confirmed -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
[Bug 1902795] Re: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1
** Summary changed: - PCI graphics seems to be broken since years on AMD K8/K10 platform (work on Intel) + PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1902795 Title: PCI graphics broken on AMD K8/K10 platform (while it works on Intel) verified from Linux 4.4 to 5.10-rc1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1902795/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs