Project

General

Profile

Bug #1385

iscsi target drops due to taskq

Added by Garrett D'Amore about 9 years ago. Updated about 9 years ago.

Status:
Resolved
Priority:
High
Category:
comstar - iSCSI/FC/SAS target
Start date:
2011-08-17
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

Nexenta has noticed that sometimes the iSCSI target will occasionally drop connections to some clients. Protocol analysis indicates excessively long deferrals in iSCSI PDU handling.

Investigation shows that taskq_dispatch() is implicated (again) by way of the kmem backing allocations. In particular, this code can wind up sleeping waiting for resources to become available.

Using the new style taskq_dispatch_ent() has been shown to resolve this problem in NexentaStor, using the same basic code.

Kudos to Albert Lee for the original patch, which I've cleaned up somewhat.

History

#1

Updated by Garrett D'Amore about 9 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 90 to 100
  • Tags deleted (needs-triage)

Resolved in:

garrett@thinkpad{36}> hg outgoing -v
running ssh "hg -R illumos-gate serve --stdio"
comparing with ssh:/illumos-gate
searching for changes

changeset: 13437:170f0c3a9064
tag: tip
user: Garrett D'Amore <>
date: Thu Aug 18 12:28:47 2011 -0700

description:
1385 iscsi target drops due to taskq
Reviewed by: Jason Brian King <>
Reviewed by: Albert Lee <>
Reviewed by: Dmitry Yusupov <>
Reviewed by: Richard Lowe <>
Approved by: Eric Shrock <>

modified:
usr/src/uts/common/io/comstar/port/iscsit/iscsit.c
usr/src/uts/common/sys/idm/idm_impl.h

Also available in: Atom PDF