From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [IPv6:2a0f:8001:1:32::40]) by lore.proxmox.com (Postfix) with ESMTPS id 839A91FF0C1 for ; Fri, 18 Sep 2026 10:53:20 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 8F905214D7; Fri, 18 Sep 2026 10:53:16 +0200 (CEST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1789618319; x=1790223119; h=mime-version:content-transfer-encoding:content-type:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=7brwbxODnMUt5KPHpFx2WnTDK+GCXDW1DsKDW1SsgT4=; b=dWpIiB0UGQflm8TSLgkISKBZETCO4LFxwH7S/H+9m4LhMolcaefsf2UJ7Mnw8xQM4m wbQdxaezbMIOiEDXFoXW03UPRekoJzRgp+vGxMUpTHTUisbO7cnZVERHIhaGx8AF1rdb DIZS/l0CCZzE0xQWUaabPyI/jZJ+C6cjzbspgpIrPIBA1A/XvRUU8MzVWUx/wZB0Q+4o 3Ep1cHX+vH8iTmYWQavzSVBeMs4ciOkyeLvyEikQv4OMbV6iz+F3DAFbKVwE7C3RGibI LNYnCM4ZplTGlVUoGO9stgSp8djL3dUQCdTsGMW76n2q3r+4Ju9r5ZPX8g3BRV4hZ3pJ Maug== X-Gm-Message-State: AFuF++leansye0HyNbd9y66E6zm/VMRQuYIXcaJbHHtq+n44iAvEfGDj nKOSSzTRE+oGL/fTXuV7RPkQP9NCgTXwQwqkb4SPLusV9To843uIfmDE7lpRUKGFJKrSo9tcusU p6bfTFv0= X-Gm-Gg: AYBFou2XGZ9vwAwiBpuJDP/56RyoFH217xSbBa2Q5i1qYtSM4sB98DzgVsRqBwxDItg 8slwr24lWX4KMP/VvtugwNEol9NK9T4vgQlq+yBVcQ4DkgSNxHm9ovrf9SByytSnKNMgMJpwtt+ EfmmRPPFbui7+K5CuS5GnsbFWusQ5NjPo8pUEPzB/5DQrytJfo2mjI1o8qoE/DBHQLwvo13hMxj VQ7Ry/NINNspGgDMfm2r2LqEi3HDGvt1+0WzlOl6S4IOp/W5AMcVWvN3wCXurGTAKksSGJaZBsj iX1IbF4cdvk9R7RsJWfaioMFgwol/ADdSxwtwyAmUO+ogJmf8ekBCposumD1OLagw0lE1zRBKQK ozVc+RSkX94qBRIqhHbHqFFp0z46PJhlL14Ob4Vts4Ftz2FL1run9gcURB/CBkZleUIz7Sg7mje kTL5kpbXK8Iqutob54bVX1f097f783954XOXxkkdZtUmQnero/QJk8qOWEZ63guZaPZsW8FCEuB AWku5yiJRT1MsKSidNNKtJ5denm5vr157iUQpCL5rmy1nrBLU/cPA24 X-Received: by 2002:a05:6102:3f0c:b0:79c:23df:6fb9 with SMTP id ada2fe7eead31-7a02973f79fmr6561855137.13.1789617922738; Wed, 16 Sep 2026 21:05:22 -0700 (PDT) From: Ing. Alfonso Kuen Arroyo To: Fiona Ebner Subject: Re: SPAM: qemu-img convert runs with cache=unsafe for every block storage except zfspool Date: Wed, 16 Sep 2026 23:05:21 -0500 Message-ID: <178961792132.43804.17173233935297903311@idkmanager.com> In-Reply-To: References: 178795574681.28052.11392785472014160013@idkmanager.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.001 Adjusted score from AWL reputation of From: address DMARC_PASS -0.1 DMARC pass policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment (newer systems) RCVD_IN_MSPIKE_H2 0.001 Average reputation (+2) SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record X-MailFrom: gerencia@idkmanager.com X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation Message-ID-Hash: SKOOUEZ6FKZ5FU567PFPBVRUOOJJ7IYV X-Message-ID-Hash: SKOOUEZ6FKZ5FU567PFPBVRUOOJJ7IYV X-Mailman-Approved-At: Fri, 18 Sep 2026 10:53:14 +0200 CC: pve-devel@lists.proxmox.com X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Hi Fiona, thanks for trying it, and sorry for the slow reply. I re-ran it today on a PVE 9.2.4 node (pve-qemu-kvm 11.0.2-1, kernel 7.0.14-4-pve) and got the silent exit 0, so here is the exact recipe, with what I think is the difference from your runs. Recipe (loop device on a file, dm-flakey with a 1 s "up" window so the device fails while the copy is still in flight): cd /var/tmp head -c 2G /dev/urandom > src.raw # no zero regions truncate -s 2G dst.img LOOP=3D$(losetup --find --show dst.img); SZ=3D$(blockdev --getsz $LOOP) # reset before each run dd if=3D/dev/zero of=3D$LOOP bs=3D1M count=3D2048 conv=3Dfsync status=3Dnone sync; echo 3 > /proc/sys/vm/drop_caches; dmesg -C dmsetup create flk --table "0 $SZ flakey $LOOP 0 1 60" # 1 s up, 60 s down /usr/bin/qemu-img convert -f raw -O raw src.raw /dev/mapper/flk; echo rc=3D= $? sleep 70 # let the down window and writeb= ack pass dmesg | grep -c 'lost async page write' dmsetup remove flk cmp -l src.raw $LOOP | wc -l Default cache mode: rc=3D0 (copy took 1.4 s) dmesg: "Buffer I/O error on dev dm-0, logical block N, lost async page writ= e" (10 lines, then "buffer_io_error: 493941 callbacks suppressed") cmp: 2015325567 bytes differ from the source (about 1.9 of 2 GiB never made it to the device) Same run with -t none: "qemu-img: error while writing at byte 1763704832: Input/output error" rc=3D1 (qemu-img is the unmodified pve-qemu-kvm binary; strace of that run shows the target opened O_RDWR without O_DIRECT and a single fdatasync, from the initial BLKZEROOUT. Our nodes also carry a local wrapper that forces -t none - that is not what was measured, and the binary name in the -t none error was edited.) Why I think your runs failed loudly instead: in both of them the device was already failing at the moment qemu-img wrote to it - dm-error from the start, and flakey "0 1 1" is down every other second, while mine stays down for 60 s so the failure lands while the pages are still dirty (a 4 s-up run with a 512 MiB source lost nothing: writeback finished inside the window). With a qcow2 source I would also expect the holes to go out as write_zeroes, which on a block device is a synchronous BLKZEROOUT ioctl and fails loudly - but I have not verified that with a qcow2 source, so treat it as a guess. What I did verify is that the writes must be accepted into the page cache first and fail at writeback time, and that the same failure is loud with -t none. I'll file this on bugzilla.proxmox.com with the recipe and both outputs, unless you'd prefer to open it on your side. Best regards, Alfonso