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
