Am 11.12.2014 um 14:52 hat Paolo Bonzini geschrieben: > Keep a queue of requests that were not submitted; pass them to > the kernel when a completion is reported, unless the queue is > plugged. > > The array of iocbs is rebuilt every time from scratch. This > avoids keeping the iocbs array and list synchronized. > > Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
Just found out that in qemu-img bench, this patch seems to cost about 5-8% for me. An optimisation for the unplugged case would probably be easy, but that would be cheating, as the devices that we're really interested in always plug the queue (perhaps I should extend qemu-img bench to do that optionally, too). Anything clever that we can do about this? Or will we just have to live with the fact that sending a single request is now slower than it used to be before bdrv_plug? Kevin