Message ID | 1469182567-3114-3-git-send-email-wangww.fnst@cn.fujitsu.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 22.07.2016 12:15, Wang WeiWei wrote: > From: Wen Congyang <wency@cn.fujitsu.com> > > Signed-off-by: Wen Congyang <wency@cn.fujitsu.com> > Signed-off-by: zhanghailiang <zhang.zhanghailiang@huawei.com> > Signed-off-by: Gonglei <arei.gonglei@huawei.com> > Signed-off-by: Changlong Xie <xiecl.fnst@cn.fujitsu.com> > Signed-off-by: Wang WeiWei <wangww.fnst@cn.fujitsu.com> > --- > block/backup.c | 18 ++++++++++++++++++ > include/block/block_backup.h | 3 +++ > 2 files changed, 21 insertions(+) > create mode 100644 include/block/block_backup.h [...] > diff --git a/include/block/block_backup.h b/include/block/block_backup.h > new file mode 100644 > index 0000000..3753bcb > --- /dev/null > +++ b/include/block/block_backup.h > @@ -0,0 +1,3 @@ > +#include "block/block_int.h" > + > +void backup_do_checkpoint(BlockJob *job, Error **errp); Include guards and copyright notice missing. I don't mind the missing copyright notice because it will default to GPL anyway. Also, I personally don't really mind the missing include guards, but I thought I'd say something anyway. Max
On 07/26/2016 05:18 AM, Max Reitz wrote: > On 22.07.2016 12:15, Wang WeiWei wrote: >> From: Wen Congyang <wency@cn.fujitsu.com> >> >> Signed-off-by: Wen Congyang <wency@cn.fujitsu.com> >> Signed-off-by: zhanghailiang <zhang.zhanghailiang@huawei.com> >> Signed-off-by: Gonglei <arei.gonglei@huawei.com> >> Signed-off-by: Changlong Xie <xiecl.fnst@cn.fujitsu.com> >> Signed-off-by: Wang WeiWei <wangww.fnst@cn.fujitsu.com> >> --- >> block/backup.c | 18 ++++++++++++++++++ >> include/block/block_backup.h | 3 +++ >> 2 files changed, 21 insertions(+) >> create mode 100644 include/block/block_backup.h > > [...] > >> diff --git a/include/block/block_backup.h b/include/block/block_backup.h >> new file mode 100644 >> index 0000000..3753bcb >> --- /dev/null >> +++ b/include/block/block_backup.h >> @@ -0,0 +1,3 @@ >> +#include "block/block_int.h" >> + >> +void backup_do_checkpoint(BlockJob *job, Error **errp); > > Include guards and copyright notice missing. I don't mind the missing > copyright notice because it will default to GPL anyway. Also, I I think i can copy the Copyright from backup.c and update it > personally don't really mind the missing include guards, but I thought Btw i'll add #ifndef...#define...#endif in next version > I'd say something anyway. warm welcome > > Max >
diff --git a/block/backup.c b/block/backup.c index 2c05323..3bce416 100644 --- a/block/backup.c +++ b/block/backup.c @@ -17,6 +17,7 @@ #include "block/block.h" #include "block/block_int.h" #include "block/blockjob.h" +#include "block/block_backup.h" #include "qapi/error.h" #include "qapi/qmp/qerror.h" #include "qemu/ratelimit.h" @@ -253,6 +254,23 @@ static void backup_attached_aio_context(BlockJob *job, AioContext *aio_context) blk_set_aio_context(s->target, aio_context); } +void backup_do_checkpoint(BlockJob *job, Error **errp) +{ + BackupBlockJob *backup_job = container_of(job, BackupBlockJob, common); + int64_t len; + + assert(job->driver->job_type == BLOCK_JOB_TYPE_BACKUP); + + if (backup_job->sync_mode != MIRROR_SYNC_MODE_NONE) { + error_setg(errp, "The backup job only supports block checkpoint in" + " sync=none mode"); + return; + } + + len = DIV_ROUND_UP(backup_job->common.len, backup_job->cluster_size); + bitmap_zero(backup_job->done_bitmap, len); +} + static const BlockJobDriver backup_job_driver = { .instance_size = sizeof(BackupBlockJob), .job_type = BLOCK_JOB_TYPE_BACKUP, diff --git a/include/block/block_backup.h b/include/block/block_backup.h new file mode 100644 index 0000000..3753bcb --- /dev/null +++ b/include/block/block_backup.h @@ -0,0 +1,3 @@ +#include "block/block_int.h" + +void backup_do_checkpoint(BlockJob *job, Error **errp);