Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-23 Thread Fam Zheng
On Mon, 06/23 07:17, Benoît Canet wrote: > The Monday 23 Jun 2014 à 12:32:30 (+0800), Fam Zheng wrote : > > On Sat, 06/21 17:40, Benoît Canet wrote: > > > The Saturday 21 Jun 2014 à 17:39:11 (+0200), Benoît Canet wrote : > > > > We still have the issue of unlocking the bottom BDS when a subtree is

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-22 Thread Benoît Canet
The Monday 23 Jun 2014 à 12:32:30 (+0800), Fam Zheng wrote : > On Sat, 06/21 17:40, Benoît Canet wrote: > > The Saturday 21 Jun 2014 à 17:39:11 (+0200), Benoît Canet wrote : > > > We still have the issue of unlocking the bottom BDS when a subtree is > > > detached > > > from the graphs by a swap.

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-22 Thread Fam Zheng
On Sat, 06/21 17:40, Benoît Canet wrote: > The Saturday 21 Jun 2014 à 17:39:11 (+0200), Benoît Canet wrote : > > We still have the issue of unlocking the bottom BDS when a subtree is > > detached > > from the graphs by a swap. (It does happen in my drive-mirror arbitrary node > > replacement serie

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-21 Thread Benoît Canet
The Saturday 21 Jun 2014 à 17:39:11 (+0200), Benoît Canet wrote : > The Saturday 21 Jun 2014 à 23:15:19 (+0800), Fam Zheng wrote : > > On Sat, 06/21 12:45, Benoît Canet wrote: > > > The Saturday 21 Jun 2014 à 16:53:58 (+0800), Fam Zheng wrote : > > > > On Fri, 06/20 09:30, Eric Blake wrote: > > > >

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-21 Thread Benoît Canet
The Saturday 21 Jun 2014 à 23:15:19 (+0800), Fam Zheng wrote : > On Sat, 06/21 12:45, Benoît Canet wrote: > > The Saturday 21 Jun 2014 à 16:53:58 (+0800), Fam Zheng wrote : > > > On Fri, 06/20 09:30, Eric Blake wrote: > > > > On 06/19/2014 11:01 PM, Fam Zheng wrote: > > > > > On Thu, 06/19 22:20, B

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-21 Thread Fam Zheng
On Sat, 06/21 12:45, Benoît Canet wrote: > The Saturday 21 Jun 2014 à 16:53:58 (+0800), Fam Zheng wrote : > > On Fri, 06/20 09:30, Eric Blake wrote: > > > On 06/19/2014 11:01 PM, Fam Zheng wrote: > > > > On Thu, 06/19 22:20, Benoît Canet wrote: > > > >> The Thursday 19 Jun 2014 à 14:13:20 (-0600),

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-21 Thread Benoît Canet
The Saturday 21 Jun 2014 à 16:53:58 (+0800), Fam Zheng wrote : > On Fri, 06/20 09:30, Eric Blake wrote: > > On 06/19/2014 11:01 PM, Fam Zheng wrote: > > > On Thu, 06/19 22:20, Benoît Canet wrote: > > >> The Thursday 19 Jun 2014 à 14:13:20 (-0600), Eric Blake wrote : > > >>> On 06/19/2014 02:01 PM,

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-21 Thread Fam Zheng
On Fri, 06/20 09:30, Eric Blake wrote: > On 06/19/2014 11:01 PM, Fam Zheng wrote: > > On Thu, 06/19 22:20, Benoît Canet wrote: > >> The Thursday 19 Jun 2014 à 14:13:20 (-0600), Eric Blake wrote : > >>> On 06/19/2014 02:01 PM, Benoît Canet wrote: > As the code will start to operate on arbitratr

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-20 Thread Eric Blake
On 06/19/2014 11:01 PM, Fam Zheng wrote: > On Thu, 06/19 22:20, Benoît Canet wrote: >> The Thursday 19 Jun 2014 à 14:13:20 (-0600), Eric Blake wrote : >>> On 06/19/2014 02:01 PM, Benoît Canet wrote: As the code will start to operate on arbitratry nodes we need the op blocker >>> >>> s/ar

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-19 Thread Fam Zheng
On Thu, 06/19 22:20, Benoît Canet wrote: > The Thursday 19 Jun 2014 à 14:13:20 (-0600), Eric Blake wrote : > > On 06/19/2014 02:01 PM, Benoît Canet wrote: > > > As the code will start to operate on arbitratry nodes we need the op > > > blocker > > > > s/arbitratry/arbitrary/ > > > > > to recursi

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-19 Thread Benoît Canet
The Thursday 19 Jun 2014 à 14:26:04 (-0600), Eric Blake wrote : > On 06/19/2014 02:20 PM, Benoît Canet wrote: > > >> This unconditionally removes all blockers of type op of the subtree > >> > >> Yikes - is that really what we want? Or do we need to start doing > >> blocker reference counting? >

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-19 Thread Eric Blake
On 06/19/2014 02:20 PM, Benoît Canet wrote: >> This unconditionally removes all blockers of type op of the subtree >> >> Yikes - is that really what we want? Or do we need to start doing >> blocker reference counting? >> >> Consider: >> >> base <- snap1 <- active >> >> Looking at Jeff's proposal

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-19 Thread Benoît Canet
The Thursday 19 Jun 2014 à 14:13:20 (-0600), Eric Blake wrote : > On 06/19/2014 02:01 PM, Benoît Canet wrote: > > As the code will start to operate on arbitratry nodes we need the op blocker > > s/arbitratry/arbitrary/ > > > to recursively block or unblock whole BDS subtrees. > > > > Also add a

Re: [Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-19 Thread Eric Blake
On 06/19/2014 02:01 PM, Benoît Canet wrote: > As the code will start to operate on arbitratry nodes we need the op blocker s/arbitratry/arbitrary/ > to recursively block or unblock whole BDS subtrees. > > Also add a function to reset all blocker from a BDS. > > This patch also take care of chan

[Qemu-devel] [PATCH] block: Make op blocker recursive

2014-06-19 Thread Benoît Canet
As the code will start to operate on arbitratry nodes we need the op blocker to recursively block or unblock whole BDS subtrees. Also add a function to reset all blocker from a BDS. This patch also take care of changing blocker user so they are not broken. Signed-off-by: Benoit Canet --- block