Skip to contentSkip to conversation

iscsi bugfixes: fix oops when removing session

PATCH In review Mike Christie 1 participant 1 message Jul 24, 2006

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 6/11 iscsi bugfixes: fix oops when removing session

Quoted 1 line

From Or Gerlitz:

We are touching the cls_session after we have freed it. This causes a oops.

drivers/scsi/libiscsi.c +2 -1
index 92186f0..775fd2a 100644
@@ -1337,6 +1337,7 @@ void iscsi_session_teardown(struct iscsi
 {
 	struct Scsi_Host *shost = iscsi_session_to_shost(cls_session);
 	struct iscsi_session *session = iscsi_hostdata(shost->hostdata);
+	struct module *owner = cls_session->transport->owner;
 
 	scsi_remove_host(shost);
 
@@ -1345,7 +1346,7 @@ void iscsi_session_teardown(struct iscsi
 
 	iscsi_destroy_session(cls_session);
 	scsi_host_put(shost);
-	module_put(cls_session->transport->owner);
+	module_put(owner);
 }
 EXPORT_SYMBOL_GPL(iscsi_session_teardown);