st/nine: Finish if nooverwrite after normal mapping
authorAxel Davy <davyaxel0@gmail.com>
Wed, 24 Apr 2019 21:58:38 +0000 (23:58 +0200)
committerAxel Davy <davyaxel0@gmail.com>
Tue, 30 Apr 2019 17:18:50 +0000 (19:18 +0200)
commitd9a4025fa3232876b586fd80f4d77681abf923ec
tree7d812ee46542378dcb7d041f91976ec4d77ab719
parente502c4d89254439d5f026375737cb7af3f9ec5b7
st/nine: Finish if nooverwrite after normal mapping

d3d's nooverwrite and gallium's unsynchronized
have different semantics.
Indeed nooverwrite says the applications won't
write to locations needed by previous draws,
which is less strong than unsynchronized which
won't synchronize previous writes.

Thus in case app is locking without discard/nooverwrite,
then using nooverwrite, we need to add a
synchronization.

Fixes: https://github.com/iXit/wine-nine-standalone/issues/29

Signed-off-by: Axel Davy <davyaxel0@gmail.com>
src/gallium/state_trackers/nine/buffer9.c
src/gallium/state_trackers/nine/buffer9.h