Am 10.12.2018 um 13:14 hat Denis Plotnikov geschrieben:
> >> @@ -491,9 +506,17 @@ int64_t aio_compute_timeout(AioContext *ctx);
> >>    */
> >>   static inline void aio_disable_external(AioContext *ctx)
> >>   {
> >> +    aio_context_acquire(ctx);
> >>       atomic_inc(&ctx->external_disable_cnt);
> >> +    aio_context_release(ctx);
> >>   }
> > 
> > This acquire/release pair looks rather useless?
> 
> I'm not sure that I understand everything correctly...
> but can a thread (context) try to disable external in another context?

Yes, that can happen. For example, think of bdrv_drain_all().

Kevin

Reply via email to