freedreno: threaded-context prep / thread-safety annotations
The interesting part is the last patch, which adds thread safety annotations.
With threaded-context, we start getting a mix of calling in to pctx entry points from frontend/state-tracker thread and driver thread. To make this manageable (and to identify problematic areas that result), use clang's thread-safety annotations to mark things that should only be accessed from driver thread, and entry points which are only called from driver thread. This ends up getting sprinkled far and wide, so I split it out into it's own MR for less rebase conflictyness. (The branch that actually starts wiring up threaded-ctx also adds some runtime asserts for !NDEBUG
builds, but those are difficult to split out without also pulling in the parts that extend threaded_context
/threaded_query
/etc.)