On Fri 29 Apr 2016 05:18:26 PM CEST, Kevin Wolf wrote: > This patch errors out if we can't find the active layer. Sounds safe > and appropriate for an initial version. The real solution isn't to > improve the magic to find the root node, but to remove the need to > find it (by getting the new op blockers).
Well, I agree with the fact that what we really want is not to block the active layer at all, but I don't see how any new op blockers are going to solve that. The situation is that we can't allow two block jobs in the same chain at the moment, and I only see three solutions: a) each job blocks the whole chain (what this series does). b) each job checks that no other job is running on the same chain. Maybe cleaner? But it would require modifying all other jobs. c) we fix bdrv_reopen() so we can actually run both jobs at the same time. I'm wondering if pausing all block jobs between bdrv_reopen_prepare() and bdrv_reopen_commit() would do the trick. Opinions? Berto