<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED - [4.17-rc1] RIP: smu7_populate_single_firmware_entry.isra.6+0x57/0xc0 [amdgpu] RSP: ffffa17901efb930"
href="https://bugs.freedesktop.org/show_bug.cgi?id=105760#c38">Comment # 38</a>
on <a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED - [4.17-rc1] RIP: smu7_populate_single_firmware_entry.isra.6+0x57/0xc0 [amdgpu] RSP: ffffa17901efb930"
href="https://bugs.freedesktop.org/show_bug.cgi?id=105760">bug 105760</a>
from <span class="vcard"><a class="email" href="mailto:alexdeucher@gmail.com" title="Alex Deucher <alexdeucher@gmail.com>"> <span class="fn">Alex Deucher</span></a>
</span></b>
<pre>(In reply to Thomas Martitz from <a href="show_bug.cgi?id=105760#c36">comment #36</a>)
<span class="quote">> Created <span class=""><a href="attachment.cgi?id=140591" name="attach_140591" title="workaround without memcpy">attachment 140591</a> <a href="attachment.cgi?id=140591&action=edit" title="workaround without memcpy">[details]</a></span> <a href='page.cgi?id=splinter.html&bug=105760&attachment=140591'>[review]</a> [review]
> workaround without memcpy
>
> I made the following patch as an alternative workaround. The printks I added
> indicate what's going wrong. The smu_data->header pointer does not become
> busted. Instead, the toc->num_entries member somehow gets set to -1 (perhaps
> by accident), and since toc->num_entries is used as an index for the
> toc->entry array, the smu7_populate_single_firmware_entry() function gets
> passed an invalid pointer.
>
> The workaround uses a temp. variable as the index (which seems to make
> resume work), but it's still to be found out why toc->num_entries changes to
> -1. Also, I still get lots of powerplay error messages with this patch. I'll
> attach dmesg next, below is just the output of the printks I added.</span >
That explains it. The problem is that the GPU does not power up properly on
resume so when you read back from vram to get the index, it returns all 1s
since the device is offline.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>