Skip to content

Commit

Permalink
Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…
Browse files Browse the repository at this point in the history
…t/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
  • Loading branch information
Linus Torvalds committed Jun 25, 2014
2 parents b8e46d2 + 6840444 commit 07f4695
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 20 deletions.
12 changes: 2 additions & 10 deletions drivers/vhost/net.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand All @@ -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;
}

Expand Down Expand Up @@ -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;
}

Expand Down
12 changes: 2 additions & 10 deletions drivers/vhost/scsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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;
}
Expand All @@ -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;
}

Expand Down

0 comments on commit 07f4695

Please sign in to comment.