On Fri, Jan 07, 2011 at 03:04:01PM +0100, René Nussbaumer wrote:
> ---
>  lib/rpc.py          |   10 ++++++++++
>  lib/server/noded.py |    9 +++++++++
>  2 files changed, 19 insertions(+), 0 deletions(-)
> 
> diff --git a/lib/rpc.py b/lib/rpc.py
> index 609549e..968a520 100644
> --- a/lib/rpc.py
> +++ b/lib/rpc.py
> @@ -989,6 +989,16 @@ class RpcRunner(object):
>                                  [(d.ToDict(), uid) for d, uid in devlist])
>  
>    @_RpcTimeout(_TMO_NORMAL)
> +  def call_blockdev_pause_resume_sync(self, node, bdev, pause):
> +    """Request a pause/resume of given block device.
> +
> +    This is a single-node call.
> +
> +    """
> +    return self._SingleNodeCall(node, "blockdev_pause_resume_sync",
> +                                [bdev.ToDict(), pause])
> +
> +  @_RpcTimeout(_TMO_NORMAL)
>    def call_blockdev_assemble(self, node, disk, owner, on_primary):
>      """Request assembling of a given block device.
>  
> diff --git a/lib/server/noded.py b/lib/server/noded.py
> index 63d5e47..22e0160 100644
> --- a/lib/server/noded.py
> +++ b/lib/server/noded.py
> @@ -184,6 +184,15 @@ class NodeHttpServer(http.server.HttpServer):
>      return backend.BlockdevCreate(bdev, size, owner, on_primary, info)
>  
>    @staticmethod
> +  def perspective_blockdev_pause_resume_sync(params):
> +    """Pause/resume sync of a block device.
> +
> +    """
> +    bdev_s, pause = params
> +    bdev = objects.Disk.FromDict(bdev_s)
> +    return backend.BlockdevPauseResumeSync(bdev, pause)
> +
> +  @staticmethod
>    def perspective_blockdev_wipe(params):
>      """Wipe a block device.

Given that an instance has multiple disks, I think it'd be worthwile to
make this multi-disk operations, i.e. params = (pause, [disks]).

What do you think?

iustin

Reply via email to