Page MenuHomeFreeBSD

D34222.id102552.diff
No OneTemporary

D34222.id102552.diff

Index: sys/dev/iscsi/icl_soft_proxy.c
===================================================================
--- sys/dev/iscsi/icl_soft_proxy.c
+++ sys/dev/iscsi/icl_soft_proxy.c
@@ -177,6 +177,7 @@
icl_listen_free(struct icl_listen *il)
{
struct icl_listen_sock *ils;
+ sbintime_t sbt, pr;
sx_xlock(&il->il_lock);
while (!TAILQ_EMPTY(&il->il_sockets)) {
@@ -188,7 +189,9 @@
ils->ils_socket->so_error = ENOTCONN;
SOLISTEN_UNLOCK(ils->ils_socket);
wakeup(&ils->ils_socket->so_timeo);
- pause("icl_unlisten", 1 * hz);
+ sbt = SBT_1S - 5 * SBT_1MS;
+ pr = 10 * SBT_1MS;
+ pause_sbt("icl_unlisten", sbt, pr, 0);
sx_xlock(&il->il_lock);
}
Index: sys/dev/iscsi/iscsi.c
===================================================================
--- sys/dev/iscsi/iscsi.c
+++ sys/dev/iscsi/iscsi.c
@@ -546,6 +546,7 @@
struct iscsi_bhs_nop_out *bhsno;
struct iscsi_session *is;
bool reconnect_needed = false;
+ sbintime_t sbt, pr;
is = context;
@@ -555,7 +556,9 @@
return;
}
- callout_schedule(&is->is_callout, 1 * hz);
+ sbt = SBT_1S - 5 * SBT_1MS;
+ pr = 10 * SBT_1MS;
+ callout_schedule_sbt(&is->is_callout, sbt, pr, 0);
if (is->is_conf.isc_enable == 0)
goto out;
@@ -1835,6 +1838,7 @@
struct iscsi_session *is;
const struct iscsi_session *is2;
int error;
+ sbintime_t sbt, pr;
iscsi_sanitize_session_conf(&isa->isa_conf);
if (iscsi_valid_session_conf(&isa->isa_conf) == false)
@@ -1912,7 +1916,9 @@
return (error);
}
- callout_reset(&is->is_callout, 1 * hz, iscsi_callout, is);
+ sbt = SBT_1S - 5 * SBT_1MS;
+ pr = 10 * SBT_1MS;
+ callout_reset_sbt(&is->is_callout, sbt, pr, iscsi_callout, is, 0);
TAILQ_INSERT_TAIL(&sc->sc_sessions, is, is_next);
ISCSI_SESSION_LOCK(is);

File Metadata

Mime Type
text/plain
Expires
Tue, Apr 21, 5:55 PM (2 h, 33 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31924253
Default Alt Text
D34222.id102552.diff (1 KB)

Event Timeline