[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 3/3] block/io: take bs->reqs_lock in bdrv_mark_request_serial
From: |
Paolo Bonzini |
Subject: |
Re: [PATCH 3/3] block/io: take bs->reqs_lock in bdrv_mark_request_serialising |
Date: |
Wed, 18 Dec 2019 18:21:01 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.1.1 |
On 18/12/19 17:59, Kevin Wolf wrote:
> Am 18.12.2019 um 14:17 hat Paolo Bonzini geschrieben:
>> bdrv_mark_request_serialising is writing the overlap_offset and
>> overlap_bytes fields of BdrvTrackedRequest. Take bs->reqs_lock
>> for the whole direction of it, and not just when waiting for
>
> Is "direction" really the word you meant?
No, "duration". I'll send v2 with all the fixes then.
Paolo
>
>> serialising requests, so that tracked_request_overlaps does not
>> look at a half-updated request.
>>
>> The new code does not unlock/relock around retries. This is unnecessary
>> because a retry is always preceded by a CoQueue wait, which already
>> releases and reacquired bs->reqs_lock.
>>
>> Reported-by: Peter Lieven <address@hidden>
>> Signed-off-by: Paolo Bonzini <address@hidden>
>
> Reviewed-by: Kevin Wolf <address@hidden>
>