From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pve-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9])
	by lore.proxmox.com (Postfix) with ESMTPS id 573C11FF38E
	for <inbox@lore.proxmox.com>; Tue, 14 May 2024 16:08:01 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id E19C28125;
	Tue, 14 May 2024 16:08:09 +0200 (CEST)
Message-ID: <a2c7c18d-fa0e-451c-8e6a-8c7f154a79f7@proxmox.com>
Date: Tue, 14 May 2024 16:08:04 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
From: Fiona Ebner <f.ebner@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>,
 =?UTF-8?Q?Fabian_Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
References: <20240319150834.266548-1-h.duerr@proxmox.com>
 <1712914044.dmqqhkfhvy.astroid@yuna.none>
 <e589a7ee-63ec-417e-a1c4-25ef33b099a7@proxmox.com>
Content-Language: en-US
In-Reply-To: <e589a7ee-63ec-417e-a1c4-25ef33b099a7@proxmox.com>
X-SPAM-LEVEL: Spam detection results:  0
 AWL -0.065 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DMARC_MISSING             0.1 Missing DMARC policy
 KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_PASS               -0.001 SPF: sender matches SPF record
Subject: Re: [pve-devel] [PATCH qemu-server 1/1] snapshot: prohibit snapshot
 with ram if vm has a passthrough pci device
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
Reply-To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: pve-devel-bounces@lists.proxmox.com
Sender: "pve-devel" <pve-devel-bounces@lists.proxmox.com>

Am 14.05.24 um 15:03 schrieb Fiona Ebner:
> That said, looking into this and wondering why QEMU doesn't check it,
> there's an issue in that our savevm-async code does not properly check
> for all migration blockers (only some of them)! I'll work out a patch
> for that. 

Well...you can't live-migrate with VMDK:

> VM 105 qmp command 'migrate' failed - The vmdk format used by node '#block185' does not support live migration
This also means that improving the check for blockers for savevm-async
would prohibit suspend-to-disk for VMs with a VMDK image (snapshots are
already not supported on the storage layer).

>From QEMU commit 5aaac46793 ("migration: savevm: consult migration
blockers"):

>     There is really no difference between live migration and savevm, except
>     that savevm does not require bdrv_invalidate_cache to be implemented
>     by all disks.  However, it is unlikely that savevm is used with anything
>     except qcow2 disks, so the penalty is small and worth the improvement
>     in catching bad usage of savevm.

VMDK does not implement bdrv_co_invalidate_cache() and sets a migration
blocker, so the penalty would be prohibiting suspend-to-disk for them
:(. Note that other drivers we care about, i.e. RBD/iSCSI/file-posix all
do implement bdrv_co_invalidate_cache() and do not set a migration blocker.

Still, it seems dangerous to ignore other migration blockers, leading to
issues like the one motivating the patch. I'll see if filtering that
special blocker or introducing special handling is not too
difficult/hacky. Otherwise, I'm not sure if it'd be tolerable to break
suspend-to-disk with VMDK (maybe for an upcoming release)?


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel