]> git.proxmox.com Git - pve-qemu-kvm.git/blob - debian/patches/sheepdog-fix-savevm-loadvm.patch
add sheepdog loadvm/savevm patch
[pve-qemu-kvm.git] / debian / patches / sheepdog-fix-savevm-loadvm.patch
1 From 1f7a48de4467f31afc51169122453318efdb0f33 Mon Sep 17 00:00:00 2001
2 From: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
3 Date: Thu, 30 Aug 2012 03:39:45 +0900
4 Subject: [PATCH] sheepdog: fix savevm and loadvm
5
6 This patch sets data to be sent to Sheepdog correctly and fixes savevm
7 and loadvm operations on a Sheepdog image.
8
9 Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
10 Signed-off-by: Kevin Wolf <kwolf@redhat.com>
11 ---
12 block/sheepdog.c | 3 ++-
13 1 files changed, 2 insertions(+), 1 deletions(-)
14
15 diff --git a/block/sheepdog.c b/block/sheepdog.c
16 index df4f441..e0753ee 100644
17 --- a/block/sheepdog.c
18 +++ b/block/sheepdog.c
19 @@ -1986,7 +1986,7 @@ static int do_load_save_vmstate(BDRVSheepdogState *s, uint8_t *data,
20 vdi_index = pos / SD_DATA_OBJ_SIZE;
21 offset = pos % SD_DATA_OBJ_SIZE;
22
23 - data_len = MIN(remaining, SD_DATA_OBJ_SIZE);
24 + data_len = MIN(remaining, SD_DATA_OBJ_SIZE - offset);
25
26 vmstate_oid = vid_to_vmstate_oid(s->inode.vdi_id, vdi_index);
27
28 @@ -2007,6 +2007,7 @@ static int do_load_save_vmstate(BDRVSheepdogState *s, uint8_t *data,
29 }
30
31 pos += data_len;
32 + data += data_len;
33 remaining -= data_len;
34 }
35 ret = size;
36 --
37 1.7.0.4