On 2/25/19 2:02 AM, Johannes Thumshirn wrote: > On 22/02/2019 17:29, Lee Duncan wrote: >> From: Lee Duncan <lduncan@xxxxxxxx> >> >> If there is an error queueing an iscsi command in >> iscsi_queuecommand(), for example if the transport fails >> to take the command in sessuin->tt->xmit_task(), then >> the error path can call iscsi_complete_task() without >> first aquiring the back_lock as required. This can >> lead to things like ITT pool can get corrupt, resulting >> in duplicate ITTs being sent out. >> >> The solution is to hold the back_lock around >> iscsi_complete_task() calls, and to add a little commenting >> to help others understand when back_lock must be held. > > You're missing a S-o-b here. > > Byte, > Johannes > Doh! I will resend. -- The Lee-Man