Am 11.10.2016 um 15:46 hat Alberto Garcia geschrieben: > On Mon 10 Oct 2016 06:03:41 PM CEST, Kevin Wolf wrote: > > >> Use block_job_add_bdrv() instead of blocking all operations in > >> mirror_start_job() and unblocking them in mirror_exit(). > >> > >> Signed-off-by: Alberto Garcia <be...@igalia.com> > > > > Compared to the old code, this unblocks BLOCK_OP_TYPE_DATAPLANE, i.e. > > you can now run a dataplane device on a BDS used as the mirror target. > > > > This means that the target could require a different AioContext than > > the source, which we can't support. So it seems unlikely to me that we > > can lift this restriction. > > Thanks, I'll fix it. > > What happens if you run a dataplane on the source, though? That's > currently allowed as far as I'm aware. Wouldn't that have a similar > effect?
The block job takes care to put the target into the same dataplane AioContext then. The job doesn't really care whether it works in the main thread or a separate I/O thread, it just requires that it's a single context, which is currently defined by the source. Kevin