Syncs are not necessary in this case.
authorCafe <cafe@not.applicable>
Wed, 2 Aug 2017 02:50:45 +0000 (02:50 +0000)
committerCafe <cafe@not.applicable>
Wed, 2 Aug 2017 02:50:45 +0000 (02:50 +0000)
commit37201ce0ca82ee5aed3e9489ba04f373f535f307
treebe5259acae84e6288e490bd12ff34c7d01688743
parent176c8f6e3c072bcb7d3823dda1fc299b24de5962
Syncs are not necessary in this case.

From #biopenly:

<cafe-> Does anyone understand how memory coherency works on this? In
particular, when exactly is a sync necessary?

<HdkR> Should only need to flush out to memory from the CPU

<cafe-> HdkR: So as long as I don't set MALI_MEM_CACHED_CPU, I don't
need to sync?

<cafe-> (That's consistent with what the blob does, but I feel shaky
about not syncing...)

<cafe-> (What does MALI_MEM_COHERENT_[LOCAL|SYSTEM] do then, if oerent
by default...)

<cafe-> HdkR: According to panwrap, the blob allocates some region
CACHED_CPU, some CACHED_CPU | COHERENT_LOCAL, none COHERENT_SYSTEM
though, and mostly none of the above. It does not issue syncs except for
the CACHED_CPU regions. It does not appear to use any other sync
mechanism either, although it's possible it does a cache flush not-with
ioctls.
src/memory.c
src/memory.h
src/prototype.c