Re: framebuffer corruption due to overlapping stp instructions on arm64

Pavel Machek
2018-08-05T21:51:58Z

[-- Attachment #1: Type: text/plain, Size: 940 bytes --]

Hi!

> > Can you run the test program on x86 using the similar framebuffer
> > setup? Does doing two writes (one aligned and one unaligned but
> > overlapping with previous one) cause the same issue? I suspect it
> > does, then using memcpy for frame buffers is wrong.

I'm pretty sure it will work ok on x86.

> Overlapping unaligned writes work on x86 - they have to, because of
> backward compatibility.

It is not that easy. 8086s (and similar) did not have MTRRs and PATs
either. Overlapping unaligned writes _on main memory_, _with normal
MTRR settings_ certainly work ok on x86.

Chances is memory type can be configured to work similar way on your
ARM/PCIe case?

> 8086, 80286 and 80386 didn't have any cache at all.

386s had cache (but not on die).
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]