Skip to content

Commit

Permalink
vhost/scsi: Don't reinvent the wheel but use existing llist API
Browse files Browse the repository at this point in the history
Although llist provides proper APIs, they are not used. Make them used.

Signed-off-by: Byungchul Park <byungchul.park@lge.com>
Acked-by: Nicholas Bellinger <nab@linux-iscsi.org>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
  • Loading branch information
Byungchul Park authored and Nicholas Bellinger committed Jun 9, 2017
1 parent fb41824 commit 12bdcbd
Showing 1 changed file with 3 additions and 8 deletions.
11 changes: 3 additions & 8 deletions drivers/vhost/scsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -496,14 +496,12 @@ static void vhost_scsi_evt_work(struct vhost_work *work)
struct vhost_scsi *vs = container_of(work, struct vhost_scsi,
vs_event_work);
struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq;
struct vhost_scsi_evt *evt;
struct vhost_scsi_evt *evt, *t;
struct llist_node *llnode;

mutex_lock(&vq->mutex);
llnode = llist_del_all(&vs->vs_event_list);
while (llnode) {
evt = llist_entry(llnode, struct vhost_scsi_evt, list);
llnode = llist_next(llnode);
llist_for_each_entry_safe(evt, t, llnode, list) {
vhost_scsi_do_evt_work(vs, evt);
vhost_scsi_free_evt(vs, evt);
}
Expand All @@ -529,10 +527,7 @@ static void vhost_scsi_complete_cmd_work(struct vhost_work *work)

bitmap_zero(signal, VHOST_SCSI_MAX_VQ);
llnode = llist_del_all(&vs->vs_completion_list);
while (llnode) {
cmd = llist_entry(llnode, struct vhost_scsi_cmd,
tvc_completion_list);
llnode = llist_next(llnode);
llist_for_each_entry(cmd, llnode, tvc_completion_list) {
se_cmd = &cmd->tvc_se_cmd;

pr_debug("%s tv_cmd %p resid %u status %#02x\n", __func__,
Expand Down

0 comments on commit 12bdcbd

Please sign in to comment.