Roland Dreier wrote:
>  > The following patch replaces the bad patch (iser_conn should not be
>  > released while its workqueue is active) that I sent a few days
>  > ago. Again, if it's possible, I'd like to have it merged into 2.6.21
>  > (it is a bug fix).
>
> We can still merge bug fixes, but I need some understanding of what
> the bug is and what the severity is.  The changelog you sent is
> inadequate, since it makes the change seem by like at most an
> optimization or simplification, and doesn't mention what the bug is at
> all:
>   

You're right. Here's a better description:

When a connection is terminated asynchronously from the iSCSI
layer's perspective, iSER needs to notify the iSCSI layer that the
connection has failed. This is done using a workqueue (switched to
from the iSER tasklet context). Meanwhile, the connection object (that 
holds the work struct) is released. If the workqueue function wasn't
called yet, it will be called later with a NULL pointer that will
crash the kernel.

The context switch (tasklet to workqueue) is not required, and 
everything can be done from the iSER tasklet. This eliminates the NULL
work struct bug (and simplifies the code).



_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to