瀏覽代碼

vhost-net: minor cleanup

Delete a label and goto from vhost_net_set_backend
Inverting a test allows a label and goto to be eliminated.

Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Jeff Dike 15 年之前
父節點
當前提交
dd1f4078f0
共有 1 個文件被更改,包括 5 次插入6 次删除
  1. 5 6
      drivers/vhost/net.c

+ 5 - 6
drivers/vhost/net.c

@@ -519,13 +519,12 @@ static long vhost_net_set_backend(struct vhost_net *n, unsigned index, int fd)
 
 
 	/* start polling new socket */
 	/* start polling new socket */
 	oldsock = vq->private_data;
 	oldsock = vq->private_data;
-	if (sock == oldsock)
-		goto done;
+	if (sock != oldsock){
+                vhost_net_disable_vq(n, vq);
+                rcu_assign_pointer(vq->private_data, sock);
+                vhost_net_enable_vq(n, vq);
+	}
 
 
-	vhost_net_disable_vq(n, vq);
-	rcu_assign_pointer(vq->private_data, sock);
-	vhost_net_enable_vq(n, vq);
-done:
 	if (oldsock) {
 	if (oldsock) {
 		vhost_net_flush_vq(n, index);
 		vhost_net_flush_vq(n, index);
 		fput(oldsock->file);
 		fput(oldsock->file);