Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
Pull vhost cleanups from Michael S Tsirkin: "Two cleanup patches removing code duplication that got introduced by changes in rc1. Not fixing crashes, but I'd rather not carry the duplicate code until the next merge window" * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost: vhost-scsi: don't open-code kvfree vhost-net: don't open-code kvfree
This commit is contained in:
+2
-10
@@ -700,14 +700,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;
|
||||
@@ -723,7 +715,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;
|
||||
}
|
||||
|
||||
@@ -840,7 +832,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
-10
@@ -1503,14 +1503,6 @@ static int vhost_scsi_set_features(struct vhost_scsi *vs, u64 features)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void vhost_scsi_free(struct vhost_scsi *vs)
|
||||
{
|
||||
if (is_vmalloc_addr(vs))
|
||||
vfree(vs);
|
||||
else
|
||||
kfree(vs);
|
||||
}
|
||||
|
||||
static int vhost_scsi_open(struct inode *inode, struct file *f)
|
||||
{
|
||||
struct vhost_scsi *vs;
|
||||
@@ -1550,7 +1542,7 @@ static int vhost_scsi_open(struct inode *inode, struct file *f)
|
||||
return 0;
|
||||
|
||||
err_vqs:
|
||||
vhost_scsi_free(vs);
|
||||
kvfree(vs);
|
||||
err_vs:
|
||||
return r;
|
||||
}
|
||||
@@ -1569,7 +1561,7 @@ static int vhost_scsi_release(struct inode *inode, struct file *f)
|
||||
/* Jobs can re-queue themselves in evt kick handler. Do extra flush. */
|
||||
vhost_scsi_flush(vs);
|
||||
kfree(vs->dev.vqs);
|
||||
vhost_scsi_free(vs);
|
||||
kvfree(vs);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user