Re: [PATCH 2/2] mirror: Wait only for in-flight operations

2020-03-25 Thread Eric Blake
On 3/25/20 12:23 PM, Kevin Wolf wrote: mirror_wait_for_free_in_flight_slot() just picks a random operation to wait for. However, a MirrorOp is already in s->ops_in_flight when mirror_co_read() waits for free slots, so if not enough slots are immediately available, an operation can end up waiting

[PATCH 2/2] mirror: Wait only for in-flight operations

2020-03-25 Thread Kevin Wolf
mirror_wait_for_free_in_flight_slot() just picks a random operation to wait for. However, a MirrorOp is already in s->ops_in_flight when mirror_co_read() waits for free slots, so if not enough slots are immediately available, an operation can end up waiting for itself, or two or more operations