5
0
mirror of git://git.proxmox.com/git/qemu-server.git synced 2025-02-02 09:47:13 +03:00
Fabian Grünbichler 4417610caa vm_resume: correctly honor $nocheck
for both vm_mon_cmd calls. under certain circumstances, the following
sequence of events can otherwise fail when live-migrating under load:

S...source node
T...target node

0: migration is complete, handover from S to T starts
1: S: logically move VM config file from S to T via rename()
2: S: rename returns, config file is (visibly) moved on S
3: S: trigger resume on T via mtunnel
4a: T: call vm_resume while config file move is not yet visible on T
4b: T: call vm_resume while config file move is already visible on T

4a instead of 4b means vm_mon_cmd will die in check_running unless
vm_mon_cmd_nocheck is used.

under heavy pmxcfs load and a slow cluster/corosync network, there can
be a few seconds of delay between 1 and 2, with a subsequent race ending in 4a
instead of 4b.

this issue was reported to occur on bulk migrations.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
(cherry picked from commit 3e24733bdf9bef232be8e5205bf5e73338e65bdb)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-05-25 11:29:46 +02:00
2019-05-25 11:29:46 +02:00
2019-04-30 14:08:27 +00:00
2016-03-08 15:52:31 +01:00
2014-05-08 08:37:04 +02:00
qm
2015-10-05 13:10:24 +02:00
2018-11-14 15:29:59 +01:00
2018-11-14 15:29:59 +01:00
2017-08-23 10:03:37 +02:00
Description
No description provided
5.4 MiB
Languages
Perl 86.3%
Batchfile 10.6%
C 2.3%
Makefile 0.8%