Michal Skrivanek has posted comments on this change. Change subject: virt: Initial support for post-copy migration ......................................................................
Patch Set 6: (6 comments) https://gerrit.ovirt.org/#/c/62873/4/vdsm/virt/migration.py File vdsm/virt/migration.py: Line 473: flags = (libvirt.VIR_MIGRATE_LIVE | Line 474: libvirt.VIR_MIGRATE_PEER2PEER | Line 475: (libvirt.VIR_MIGRATE_TUNNELLED if Line 476: self._tunneled else 0) | Line 477: (libvirt.VIR_MIGRATE_ABORT_ON_ERROR if 7.3 is coming out really soon, and will be adopted in 4.0.z already. Likely before this patch gets in Line 478: self._abortOnError else 0) | Line 479: (libvirt.VIR_MIGRATE_COMPRESSED if Line 480: self._compressed else 0) | Line 481: (libvirt.VIR_MIGRATE_AUTO_CONVERGE if Line 803: self.stop() Line 804: Line 805: Line 806: _Progress = collections.namedtuple('_Progress', [ Line 807: 'job_type', 'time_elapsed', 'data_total', ? Line 808: 'data_processed', 'data_remaining', Line 809: 'mem_total', 'mem_processed', 'mem_remaining', Line 810: 'mem_bps', 'mem_constant', 'compression_bytes', Line 811: 'dirty_rate', 'mem_iteration' https://gerrit.ovirt.org/#/c/62873/6/vdsm/virt/migration.py File vdsm/virt/migration.py: Line 480: self._compressed else 0) | Line 481: (libvirt.VIR_MIGRATE_AUTO_CONVERGE if Line 482: self._autoConverge else 0)) Line 483: if self._use_convergence_schedule: Line 484: # TODO: Replace this whole block with simple flag setting once we're going to do that very soon in 4.0.z, probably before this patch is merged Line 485: # Vdsm depends on proper versions of QEMU and libvirt. Line 486: try: Line 487: flags |= libvirt.VIR_MIGRATE_POSTCOPY Line 488: except AttributeError: Line 490: pass Line 491: # There is a QEMU bug causing post-copy migration fail when Line 492: # (XBZRLE) compression is enabled. So let's disable the Line 493: # compression until we depend on a fixed QEMU version. Line 494: # See https://bugzilla.redhat.com/1368422. since the policy wouldn't include it we can leave it as a qemu issue only Line 495: if flags & libvirt.VIR_MIGRATE_POSTCOPY: Line 496: flags &= ~libvirt.VIR_MIGRATE_COMPRESSED Line 497: self._vm._dom.migrateToURI3(duri, params, flags) Line 498: else: Line 787: downtime) Line 788: self._vm._dom.migrateSetMaxDowntime(downtime, 0) Line 789: elif action == CONVERGENCE_SCHEDULE_POST_COPY: Line 790: self._vm.log.info('Switching to post-copy migration') Line 791: if not hasattr(self._vm._dom, 'migrateStartPostCopy'): again, no need for that soon, so please do not handle it in the patch Line 792: self._vm.log.warn('Failed to switch to post-copy migration: ' Line 793: 'not supported') Line 794: elif self._vm._dom.migrateStartPostCopy(0) < 0: Line 795: # Do nothing for now; the next action will be invoked after a Line 827: stats[libvirt.VIR_DOMAIN_JOB_MEMORY_PROCESSED], Line 828: stats[libvirt.VIR_DOMAIN_JOB_MEMORY_REMAINING], Line 829: stats[libvirt.VIR_DOMAIN_JOB_MEMORY_BPS], Line 830: stats[libvirt.VIR_DOMAIN_JOB_MEMORY_CONSTANT], Line 831: stats.get(libvirt.VIR_DOMAIN_JOB_COMPRESSION_BYTES, 0), why? Line 832: # available since libvirt 1.3 Line 833: stats.get('memory_dirty_rate', -1), Line 834: # available since libvirt 1.3 Line 835: stats.get('memory_iteration', -1), -- To view, visit https://gerrit.ovirt.org/62873 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: comment Gerrit-Change-Id: I4c9911f47331120a1b78326044a4949abf35d5fe Gerrit-PatchSet: 6 Gerrit-Project: vdsm Gerrit-Branch: master Gerrit-Owner: Milan Zamazal <[email protected]> Gerrit-Reviewer: Francesco Romani <[email protected]> Gerrit-Reviewer: Jenkins CI Gerrit-Reviewer: Michal Skrivanek <[email protected]> Gerrit-Reviewer: Milan Zamazal <[email protected]> Gerrit-Reviewer: Tomas Jelinek <[email protected]> Gerrit-Reviewer: gerrit-hooks <[email protected]> Gerrit-HasComments: Yes _______________________________________________ vdsm-patches mailing list -- [email protected] To unsubscribe send an email to [email protected]
