Re: [RESEND] [PATCH] Hold back_lock when calling iscsi_complete_task
From: Lee Duncan
Date: Mon Feb 25 2019 - 12:39:13 EST
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