Mike Christie <[email protected]> wrote:
> Or Gerlitz wrote:

>> since iscsi connection objects are recycled, on the time the transport  
>> connection
>> (e.g iser's ib connection) is released it is illegal to touch the iscsi 
>> connection tied to the
>> transport back-pointer, as it may already point to a different transport 
>> connection

> I agree on it being a bug

Mike,

So we both agree its a bug, good. Now, with these patches
ep_disconnected isn't blocking any more till the disconnect event is
delivered but rather only till all posted sends and receives are
flushed. Once I started to do that, I was hitting the bug! e.g if I
take a path/port down and then after few seconds UP, before the
session recovery timeout, the session's iscsi connection was
successfully recycled and bounded to an newly allocated ib connection
/ ep. When the disconnect event was finally arriving, the old ib
connection was NULL-ifying the ib_conn pointer
from iscsi_conn->iser_conn and the when iscsid was attempting to send
a PDU (e.g NOP) through the new connection, I got a crash.

> but do you remember why that was added to iscsi_iser_conn_destroy originally?
> I later moved it to iser_conn_release in commit
>  b40977d95fb3a1898ace6a7d97e4ed1a33a440a4 but I think Erez had added that null
> and some checks for it being null for a specific bug. I am not 100% sure. 
> Look in the git logs
> to make sure. I will check them too when I get some more time.

okay, I'll look on the git logs, but I think there's a good chance it
was just sitting there, not added at some point, we'll see.

Or.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to