Bug 176231 - Stale iSCSI session stays active after removing the target permanently
Summary: Stale iSCSI session stays active after removing the target permanently
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: iscsi-initiator-utils
Version: 4.0
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
: ---
Assignee: Mike Christie
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: 170416
TreeView+ depends on / blocked
 
Reported: 2005-12-20 12:42 UTC by Chakravarthy G.R.K.
Modified: 2007-11-30 22:07 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2006-07-21 14:36:47 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Fix for the bug (3.99 KB, patch)
2005-12-20 12:42 UTC, Chakravarthy G.R.K.
no flags Details | Diff

Description Chakravarthy G.R.K. 2005-12-20 12:42:56 UTC
Description of problem:

Setup:
Two targets are connected to MDS. One of which is available only if the other 
is removed permanently(a dynamic target is created). The MDS is connected to 
the initiator.

Problem:
After removing the first iscsi target only the dynamic target is sent to the 
initiator on a SendTargets respose. So it sets up a session for the new target. 
But the older session (stale session) still remains and login is unecessarily 
retried on a permanently removed target.


Version-Release number of selected component (if applicable):


How reproducible:
Always


Steps to Reproduce:
1. Make sure that all targets and iSCSI sessions are up.
2. Remove the target on MDS
3. Check the iSCSI sessions on the initiator.
  
  
Actual results:
The initiator tries to login into a permanently removed target. It does not 
tear down the older sessions

Expected results:
The initiator should tear down all the old sessions, once the new dicovery 
responds with dissimilar targets.


Additional info:

Comment 1 Chakravarthy G.R.K. 2005-12-20 12:42:57 UTC
Created attachment 122444 [details]
Fix for the bug

Comment 2 Mike Christie 2006-03-21 23:37:35 UTC
Hey

what is the reason for if session not alive test?

+	dlist_for_each_data(device_list, cldev, struct sysfs_class_device) {
+		sprintf(name, "host%d", host_list[i]);
+		if (!strncmp(cldev->name, name, strlen(name))) {
+			attr1 = sysfs_get_classdev_attr(cldev,
+						"session_established");
+			sscanf(attr1->value, "%d", &session_alive);
+			if (!session_alive) {

Comment 3 Tom Coughlan 2006-04-10 11:57:02 UTC
No reply since December. Low priority. Does not happen frequently. 

We are not planning to address this in U4. Possibly in a later update. 

Comment 5 RHEL Program Management 2006-07-21 14:36:48 UTC
Development Management has reviewed and declined this request.  You may appeal this decision by reopening this request.


Note You need to log in before you can comment on or make changes to this bug.