diff options
Diffstat (limited to 'drivers/vhost/net.c')
-rw-r--r-- | drivers/vhost/net.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c index 9b3ca103135f..f616cefc95ba 100644 --- a/drivers/vhost/net.c +++ b/drivers/vhost/net.c | |||
@@ -128,8 +128,7 @@ static void handle_tx(struct vhost_net *net) | |||
128 | size_t hdr_size; | 128 | size_t hdr_size; |
129 | struct socket *sock; | 129 | struct socket *sock; |
130 | 130 | ||
131 | /* TODO: check that we are running from vhost_worker? | 131 | /* TODO: check that we are running from vhost_worker? */ |
132 | * Not sure it's worth it, it's straight-forward enough. */ | ||
133 | sock = rcu_dereference_check(vq->private_data, 1); | 132 | sock = rcu_dereference_check(vq->private_data, 1); |
134 | if (!sock) | 133 | if (!sock) |
135 | return; | 134 | return; |
@@ -306,7 +305,8 @@ static void handle_rx_big(struct vhost_net *net) | |||
306 | size_t len, total_len = 0; | 305 | size_t len, total_len = 0; |
307 | int err; | 306 | int err; |
308 | size_t hdr_size; | 307 | size_t hdr_size; |
309 | struct socket *sock = rcu_dereference(vq->private_data); | 308 | /* TODO: check that we are running from vhost_worker? */ |
309 | struct socket *sock = rcu_dereference_check(vq->private_data, 1); | ||
310 | if (!sock || skb_queue_empty(&sock->sk->sk_receive_queue)) | 310 | if (!sock || skb_queue_empty(&sock->sk->sk_receive_queue)) |
311 | return; | 311 | return; |
312 | 312 | ||
@@ -415,7 +415,8 @@ static void handle_rx_mergeable(struct vhost_net *net) | |||
415 | int err, headcount; | 415 | int err, headcount; |
416 | size_t vhost_hlen, sock_hlen; | 416 | size_t vhost_hlen, sock_hlen; |
417 | size_t vhost_len, sock_len; | 417 | size_t vhost_len, sock_len; |
418 | struct socket *sock = rcu_dereference(vq->private_data); | 418 | /* TODO: check that we are running from vhost_worker? */ |
419 | struct socket *sock = rcu_dereference_check(vq->private_data, 1); | ||
419 | if (!sock || skb_queue_empty(&sock->sk->sk_receive_queue)) | 420 | if (!sock || skb_queue_empty(&sock->sk->sk_receive_queue)) |
420 | return; | 421 | return; |
421 | 422 | ||