virgl: better resource tracking and fix a transfer sync issue
This removes an incorrect optimization from virgl_res_needs_flush. It also does better resource tracking in the hope the perf regression is minimized.
This inadvertently introduces some perf regressions. I will check around. If you have any specific workload in mind, let me know as well.