Softlockup on boot with Cape Verde XT on many kernels

Federico federicotg at gmail.com
Wed Jan 14 19:53:09 PST 2015


How about this? It seems at least related.

https://github.com/alterapraxisptyltd/openatom/issues/1

Quote:
[linux] Infinite loop in pci_get_rom_size()

This is one of those issues that you find when putting supposedly stable
code through unusual situations. I did expect any function in linux that is
not part of radeon.ko to not be rock solid. Turns out that's not really the
case.

If we have a PCIR structure with a zero size length, the loop iterating
through those structure does not advance. It simply does "image +=
readw(pds + 16) * 512;", but if that field is zero we're back analyzing the
same structure on the next loop. The way to get out of this loop is to set
bit 7 of the type field. That's what 'last_image' does. If that bit is not
set, with the above, that's an infinite loop.

Luckily, it doesn't crash the kernel, but it hangs any driver that calls
the function under said circumstances. No more modprobe -r or unbinding.
Reboot is needed. No idea why a firmware blob here is treated as trusted
input.



2015-01-15 0:14 GMT-03:00 Federico <federicotg at gmail.com>:

> Also just tried *enabling* the IGP and keeping PEG as the primary
> graphics. Video output stayed on the discrete card output and the same
> stack trace happened when booting without nomodeset. So now I'm back to
> setting it as disabled as it had been before.
>
>
> 2015-01-14 23:59 GMT-03:00 Federico <federicotg at gmail.com>:
>
> AFAIK this BIOS requires me to disable IGP to even use the discrete
>> graphics. At least that's the first thing I had to do when I first
>> installed the card and every time I wanted to change the monitor connection.
>> Here's how "disabled" it is:
>>
>>
>> https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1386973/+attachment/4298792/+files/20150114_234953.png
>>
>>
>> 2015-01-14 23:46 GMT-03:00 Michel Dänzer <michel at daenzer.net>:
>>
>> On 15.01.2015 11:10, Federico wrote:
>>> > Here's the 3.18 32-bits 60 lines per screen stack trace. Always using
>>> > softlockup_panic=1.
>>> >
>>> > Quite similar, but slightly different. Hopefully, useful.
>>> >
>>> >
>>> https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1386973/+attachment/4298769/+files/20150114_230142.png
>>>
>>> Looks like it hangs while reading the video BIOS ROM.
>>>
>>> If the integrated GPU is still enabled in the system BIOS setup, does
>>> disabling it avoid the problem?
>>>
>>>
>>> --
>>> Earthling Michel Dänzer               |               http://www.amd.com
>>> Libre software enthusiast             |             Mesa and X developer
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20150115/765596e3/attachment.html>


More information about the dri-devel mailing list