summaryrefslogtreecommitdiffstats
path: root/usr.sbin/iscsid
diff options
context:
space:
mode:
authorclaudio <claudio@openbsd.org>2011-04-28 18:32:01 +0000
committerclaudio <claudio@openbsd.org>2011-04-28 18:32:01 +0000
commite1c3b4f85ed41a924f3a1353857f0affb05519d9 (patch)
treed502a95323e26f2f4dab894c213c41a003d27694 /usr.sbin/iscsid
parentDATA OUT operations need to be piggibacked on the same connection as (diff)
downloadwireguard-openbsd-e1c3b4f85ed41a924f3a1353857f0affb05519d9.tar.xz
wireguard-openbsd-e1c3b4f85ed41a924f3a1353857f0affb05519d9.zip
Try to schedule a new task for the connection in conn_task_cleanup()
this removes the session_schedule() in the task_pdu_cb().
Diffstat (limited to 'usr.sbin/iscsid')
-rw-r--r--usr.sbin/iscsid/connection.c4
-rw-r--r--usr.sbin/iscsid/task.c3
2 files changed, 4 insertions, 3 deletions
diff --git a/usr.sbin/iscsid/connection.c b/usr.sbin/iscsid/connection.c
index 8701d43d610..cb76c158090 100644
--- a/usr.sbin/iscsid/connection.c
+++ b/usr.sbin/iscsid/connection.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: connection.c,v 1.10 2011/04/27 19:02:07 claudio Exp $ */
+/* $OpenBSD: connection.c,v 1.11 2011/04/28 18:32:01 claudio Exp $ */
/*
* Copyright (c) 2009 Claudio Jeker <claudio@openbsd.org>
@@ -252,6 +252,8 @@ conn_task_cleanup(struct connection *c, struct task *t)
TAILQ_REMOVE(&c->tasks, t, entry);
if (!TAILQ_EMPTY(&c->tasks))
conn_task_schedule(c);
+ else
+ session_schedule(c->session);
}
}
diff --git a/usr.sbin/iscsid/task.c b/usr.sbin/iscsid/task.c
index 16c41001dc5..221cabd5ff1 100644
--- a/usr.sbin/iscsid/task.c
+++ b/usr.sbin/iscsid/task.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: task.c,v 1.8 2011/04/27 19:02:07 claudio Exp $ */
+/* $OpenBSD: task.c,v 1.9 2011/04/28 18:32:01 claudio Exp $ */
/*
* Copyright (c) 2009 Claudio Jeker <claudio@openbsd.org>
@@ -141,5 +141,4 @@ task_pdu_cb(struct connection *c, struct pdu *p)
log_pdu(p, 1);
pdu_free(p);
}
- session_schedule(c->session);
}