[Nouveau] [Bug 71116] [any/all(?) cards below nv50(?)] libdrm built with gcc4.8 causes crashes/lockups during normal operation, and resume from disk/memory
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu Nov 7 11:51:55 CET 2013
https://bugs.freedesktop.org/show_bug.cgi?id=71116
--- Comment #21 from Maarten Lankhorst <bugs at mblankhorst.nl> ---
Compiled code with this patch:
00000000000015b0 <nouveau_pushbuf_reloc>:
15b0: 55 push %rbp
15b1: 48 8b 6f 30 mov 0x30(%rdi),%rbp
15b5: 53 push %rbx
15b6: 48 89 fb mov %rdi,%rbx
15b9: e8 42 ea ff ff callq 0 <pushbuf_krel>
15be: 89 45 00 mov %eax,0x0(%rbp)
15c1: 48 83 43 30 04 addq $0x4,0x30(%rbx)
15c6: 5b pop %rbx
15c7: 5d pop %rbp
15c8: c3 retq
Without:
0000000000001650 <nouveau_pushbuf_reloc>:
1650: 48 89 5c 24 f0 mov %rbx,-0x10(%rsp)
1655: 48 89 6c 24 f8 mov %rbp,-0x8(%rsp)
165a: 48 83 ec 10 sub $0x10,%rsp
165e: 48 8b 6f 30 mov 0x30(%rdi),%rbp
1662: 48 89 fb mov %rdi,%rbx
1665: e8 96 e9 ff ff callq 0 <pushbuf_krel>
166a: 89 45 00 mov %eax,0x0(%rbp)
166d: 48 83 c5 04 add $0x4,%rbp
1671: 48 89 6b 30 mov %rbp,0x30(%rbx)
1675: 48 8b 1c 24 mov (%rsp),%rbx
1679: 48 8b 6c 24 08 mov 0x8(%rsp),%rbp
167e: 48 83 c4 10 add $0x10,%rsp
1682: c3 retq
It seems that the nouveau_pushbuf_reloc difference is harmless. Code is
equivalent, except that without the patch applied it uses another temp variable
causing less optimal code generation.
Remaining candidates: pushbuf_validate, nouveau_pushbuf_data,
nouveau_pushbuf_del.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/nouveau/attachments/20131107/bff92539/attachment.html>
More information about the Nouveau
mailing list