vhost: lockless enqueuing
authorJason Wang <jasowang@redhat.com>
Tue, 26 Apr 2016 02:14:33 +0000 (22:14 -0400)
committerMichael S. Tsirkin <mst@redhat.com>
Mon, 1 Aug 2016 18:44:51 +0000 (21:44 +0300)
commit04b96e5528ca97199b429810fe963185a67dd40e
tree35cef78e529e6fb49c34159f58d19fb07f54de3e
parent7235acdb1144460d9f520f0d931f3cbb79eb244c
vhost: lockless enqueuing

We use spinlock to synchronize the work list now which may cause
unnecessary contentions. So this patch switch to use llist to remove
this contention. Pktgen tests shows about 5% improvement:

Before:
~1300000 pps
After:
~1370000 pps

Signed-off-by: Jason Wang <jasowang@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/vhost/vhost.c
drivers/vhost/vhost.h