Re: [PATCH 3/3] block-backend: delay application of request queuing

2023-04-12 Thread Hanna Czenczek
On 12.04.23 14:03, Paolo Bonzini wrote: On Wed, Apr 12, 2023 at 1:54 PM Hanna Czenczek wrote: On 05.04.23 18:31, Paolo Bonzini wrote: +if (busy || blk->in_flight) { +return true; +} + +if (qatomic_read(&blk->request_queuing) == BLK_QUEUE_READY) { +qatomic_set(&blk->

Re: [PATCH 3/3] block-backend: delay application of request queuing

2023-04-12 Thread Paolo Bonzini
On Wed, Apr 12, 2023 at 1:54 PM Hanna Czenczek wrote: > On 05.04.23 18:31, Paolo Bonzini wrote: > > +if (busy || blk->in_flight) { > > +return true; > > +} > > + > > +if (qatomic_read(&blk->request_queuing) == BLK_QUEUE_READY) { > > +qatomic_set(&blk->request_queuing, B

Re: [PATCH 3/3] block-backend: delay application of request queuing

2023-04-12 Thread Hanna Czenczek
On 05.04.23 18:31, Paolo Bonzini wrote: Request queuing prevents new requests from being submitted to the BlockDriverState, not allowing them to start instead of just letting them complete before bdrv_drained_begin() returns. The reason for this was to ensure progress and avoid a livelock in blk

[PATCH 3/3] block-backend: delay application of request queuing

2023-04-05 Thread Paolo Bonzini
Request queuing prevents new requests from being submitted to the BlockDriverState, not allowing them to start instead of just letting them complete before bdrv_drained_begin() returns. The reason for this was to ensure progress and avoid a livelock in blk_drain(), blk_drain_all_begin(), bdrv_drai