[PATCH 2/2] [Trusty] (upstream) SRU: vhost-net: don't open-code kvfree

Dave Chiluk chiluk at canonical.com
Thu Aug 25 19:37:16 UTC 2016


From: Romain Francoise <romain at orebokech.com>

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1616193

Commit 23cc5a991c ("vhost-net: extend device allocation to vmalloc")
added another open-coded version of kvfree (which is available since
v3.15-rc5), nuke it.

Signed-off-by: Romain Francoise <romain at orebokech.com>
Signed-off-by: Michael S. Tsirkin <mst at redhat.com>

(cherry picked from commit d04257b07f2362d4eb550952d5bf5f4241a8046d)
Signed-off-by: Dave Chiluk <chiluk at canonical.com>
---
 drivers/vhost/net.c | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c
index 3579ec0..0b40cc1 100644
--- a/drivers/vhost/net.c
+++ b/drivers/vhost/net.c
@@ -696,14 +696,6 @@ static void handle_rx_net(struct vhost_work *work)
 	handle_rx(net);
 }
 
-static void vhost_net_free(void *addr)
-{
-	if (is_vmalloc_addr(addr))
-		vfree(addr);
-	else
-		kfree(addr);
-}
-
 static int vhost_net_open(struct inode *inode, struct file *f)
 {
 	struct vhost_net *n;
@@ -719,7 +711,7 @@ static int vhost_net_open(struct inode *inode, struct file *f)
 	}
 	vqs = kmalloc(VHOST_NET_VQ_MAX * sizeof(*vqs), GFP_KERNEL);
 	if (!vqs) {
-		vhost_net_free(n);
+		kvfree(n);
 		return -ENOMEM;
 	}
 
@@ -839,7 +831,7 @@ static int vhost_net_release(struct inode *inode, struct file *f)
 	 * since jobs can re-queue themselves. */
 	vhost_net_flush(n);
 	kfree(n->dev.vqs);
-	vhost_net_free(n);
+	kvfree(n);
 	return 0;
 }
 
-- 
2.7.4





More information about the kernel-team mailing list