i915: store reference to the context within struct intel_fence (v2)
authorMauro Rossi <issor.oruam@gmail.com>
Sat, 16 Jul 2016 00:02:58 +0000 (02:02 +0200)
committerEmil Velikov <emil.l.velikov@gmail.com>
Fri, 14 Oct 2016 14:43:57 +0000 (15:43 +0100)
commit6eacd69b6fc9b09f08cbb687369cf1c92947e0b2
treef4f1b9434c565e4468c0567613f3ecc45713ca87
parentd11515ff1b3f2d500044d8f68ab49a4ffc89f643
i915: store reference to the context within struct intel_fence (v2)

Porting of the corresponding patch for i965.

Here follows the original commit message by Tomasz Figa:

"As the spec allows for {server,client}_wait_sync to be called without
currently bound context, while our implementation requires context
pointer.

v2: Add a mutex and acquire it for the duration of
    brw_fence_client_wait() and brw_fence_is_completed() as suggested
    by Chad."

NOTE: in i915 all references to 'brw' are replaced by 'intel'

Marshmallow-x86 boots ok with the following results of Android CTS.

Android CTS 6.0_r7 build:2906653
Session     Pass       Fail     Not Executed
0(EGL)      1410       24       0
1(GLES2)    13832      82       0

I get the same results as per i965GM.

[Emil Velikov: Include Mauro's test results]
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
src/mesa/drivers/dri/i915/intel_syncobj.c