vhost: move memory pointer to VQs
authorMichael S. Tsirkin <mst@redhat.com>
Thu, 5 Jun 2014 12:20:27 +0000 (15:20 +0300)
committerMichael S. Tsirkin <mst@redhat.com>
Mon, 9 Jun 2014 13:21:07 +0000 (16:21 +0300)
commit47283bef7ed356629467d1fac61687756e48f254
tree464f8f6973cf9da00fc57679a62638a6c7aee593
parentea16c51433510f7f758382dec5b933fc0797f244
vhost: move memory pointer to VQs

commit 2ae76693b8bcabf370b981cd00c36cd41d33fabc
    vhost: replace rcu with mutex
replaced rcu sync for memory accesses with VQ mutex locl/unlock.
This is correct since all accesses are under VQ mutex, but incomplete:
we still do useless rcu lock/unlock operations, someone might copy this
code into some other context where this won't be right.
This use of RCU is also non standard and hard to understand.
Let's copy the pointer to each VQ structure, this way
the access rules become straight-forward, and there's
no need for RCU anymore.

Reported-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/vhost/net.c
drivers/vhost/scsi.c
drivers/vhost/test.c
drivers/vhost/vhost.c
drivers/vhost/vhost.h