There are ordering issues with the way buffer operations are handled in QRhiResourceUpdateBatch. This was fixed for textures, but the same problem will appear for buffers once operations like Read and Copy are introduced.
Enqueuing multiple operations on the same batch must be processed in the order they were added (only across the same resource type, i.e. there is no ordering guarantee between buffer and texture operations with respect to each other).
Now that we are running into needing buffer readback operations (in autotests for instance), it turns out adding them is not trivial. Let's fix the underlying issues first.