virtio-gpu vq code isn't thread safe

Gerd Hoffmann kraxel at
Tue Jun 16 00:12:23 PDT 2015

On Di, 2015-06-16 at 14:55 +1000, Dave Airlie wrote:
> Hey Gerd,
> This probably doesn't matter yet, but they virtgpu_vq buffer
> allocation code you added isn't threadsafe.

Right, I'll add a lock (or do you have a patch already?)

> I'm not sure what was wrong with the original code I wrote, you never
> contacted me with reasons for rewriting it, but the Linux kmalloc
> isn't that slow, but if we want some form of cached allocator you
> probably should just use kmem_cache_create instead of what you have
> there.

That came up during patch review.  Problem isn't kmalloc performance,
kmalloc (ENOMEM) but error handling.  When we allocate stuff in advance
a bunch of nasty error paths simply can't happen.


More information about the dri-devel mailing list