03-01-2019 02:56 AM
This issue (which includes serious IOMMU issues) was now reported more than half a year ago. We got 140 replies, but not a single one from Lenovo. IMO, this situation is telling concerning the state of the ThinkPad brand.
At least the A485 received BIOS updates this year. Would anyone know whether the issues are fixed there?
03-01-2019 10:28 PM
This appears to be an off-by-one error; as in, the relevant IVRS table entries apparently use the indices #33 and #34 instead of the correct #32 and #33.
allows us to reassign the values correctly, in theory.
Please correct me if I am wrong.
From what I can gather on various forums, the A485 had this issue upon release, and it has indeed since been fixed, although I cannot find any references to this in the changelog. Hanlon's razor aside, it's plausible that this remains unfixed so that business clients choose the (more expensive) A485, but I think that Lenovo are simply doing the minimum necessary in terms of bugfixing, and this is not a "Linux-certified" laptop. Additionally, this is a community forum, not a venue for official support, so the amount of traffic here really is irrelevant. How many people in this thread have actually been on the phone with Lenovo over this issue? Perhaps it should be mentioned that this issue affects Windows users as well (presumably this is a "Windows-certified" laptop), at least for those that need a working IOMMU.
Let's look at possible solutions. Does anyone know whether this ThinkPad's BIOS images require a digital signature to be flashed? If not, it should be trivial for us to patch this ourselves and utilise the corrected image, sans Lenovo. Alternatively, if the shortcomings in the kernel IVRS override system mentioned above are fixed (open an issue in the kernel bugtracker?), it should be indistinguishable from a patched BIOS. This is all assuming it really is an off-by-one error, of course.
03-01-2019 11:57 PM
I actually did open a ticket with Lenovo and pointed to this thread. They told me they can't fix it because AMD hasn't sent them the correct details.
Others here had opened a ticket with AMD, and they told them it is on Lenovo to set it correctly in the BIOS...
In my ticket with Lenovo I pointed out that surely Lenovo has enough clout with AMD to just ask if something is missing instead of sending customers from one company to the other... They just closed the ticket.
I had expected much better from Lenovo when I switched from buying ASUS, but never again if this is not solved ASAP. As mentioned, it is a trivial fix, perhaps teen minutes of work for their engineers...
03-02-2019 12:03 AM
03-02-2019 02:55 AM
If you are still using
you should replace it with the two IVRS overrides for better performance. Take care that you are using the latest 4.20.x kernel.
03-02-2019 04:23 AM
It was mentioned by people that have done it (the ten minutes). Is just a data table where they have to enter the correct number.
When developing the next version of the BIOS, correcting that table won't add more than ten minutes.