From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.openvz.org (mail.openvz.org [69.168.225.77]) by lore.virtuozzo.com (Postfix) with ESMTPS id 292F080474 for ; Fri, 23 Oct 2026 13:21:50 +0000 (UTC) Received: from mail.openvz.org (localhost [127.0.0.1]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69NDKYDW024858; Fri, 23 Oct 2026 16:20:36 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69NDKYDW024858 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="dCOLIWu9" Received: from mail-wr1-f70.google.com (mail-wr1-f70.google.com [209.85.221.70]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69NDKERh024833 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Fri, 23 Oct 2026 16:20:14 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69NDKERh024833 Received: by mail-wr1-f70.google.com with SMTP id ffacd0b85a97d-48c430f0f01so726991f8f.1 for ; Fri, 23 Oct 2026 06:20:14 -0700 (PDT) X-Forwarded-Encrypted: i=2; AKwUvBybCYNW+glLfC82MZlVG3PZoBmDp28OVlXywPtWhDJUyHxCmuxBZzFQr3QzDPlaALNhcOAquA==@openvz.org X-Gm-Message-State: AFq9FYJVeDe0Ema2SZI28siKQM0i+rlTG6/I8azGDpDhHtTzWm1U+zau TcNzF3I14pbClAzg/zoeZPSTHlUNY2QEtcz15x0BFqtB1gm9PtQBO0TUyFRAXCjpQcu3CJ/BORA RAUb/0/q7fPg4XOiUWQkAzAdSFL/29nq66nXDUimL/7MoxFK8o2lP8Q== X-Gm-Gg: AYBFou2bKm3zVjvC95shcT5BKAkMnZkm/wLEtGL9VheeG7co0w1eI1K3svoiV3/6Vqw DsKaoqZMq6ConOy1qCev/UnbVJDDc1uHxPVlnSP3+2qUOnQHtkA1KBl9m8m/6GgZw7+UIJfAq3G V9l8b1vTUUeIKT2tdb5oDdVKHTDl0kvPOcpyuhreiuZvzh7nrXEQbSZuBpOH4ftO74dB7JaQThe eguPp5zcQJjChWWdUD+WKijWL3LtTtupMtZExmX/m5JPvqXoQDdRMgKoz2oc4EguERkoEfQyJpx rhapJghbrpzbKE+v56obotoXgTCHL7imaPSdDoCHQS2c81uVTW2XFIROY5RmnHBgaHQmpq7aFkm f4k+I2j+Jp6gxvDYqjyDJTmObhkA= X-Received: by 2002:a5d:5d03:0:b0:48d:fd0e:a117 with SMTP id ffacd0b85a97d-48e38578b31mr3947469f8f.5.1792761613741; Fri, 23 Oct 2026 06:20:13 -0700 (PDT) X-Received: by 2002:a5d:5d03:0:b0:48d:fd0e:a117 with SMTP id ffacd0b85a97d-48e38578b31mr3947372f8f.5.1792761612989; Fri, 23 Oct 2026 06:20:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1792761612; cv=none; d=google.com; s=arc-20260327; b=c6hVxgcAcPe1wvML5uCmPfyPqWFghOm6bT/wdRzR9fUdxvY6bQ9bYmboCHbtgIHkfg /s0/47uExSDBhZTDPGoiO/FZel7iRCrY5WrVsDGEQYI46yAh5vDFgesGfPe90d/JDypS cE6evn65HtzCtTjUFMdXAg3DNW9V12ONJB661Z17EM8ixqrtKyw+o8RbOP5RDZ4+l6vH Ik4FxyY9En7AhP5dBt/poOjAWf6d4lCvh1fE/VoStWT2JgA6SZ0Y3eiLj5ZtQ9Kx7zcv o/WEPLYKCTc902aoDkZtUPCZABnS5c+IT6aLO4lSM4vRMfC7Tpw/Cu2iPwU+JIhbvNFl 7fqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature; bh=D6w0W9dLFcTRcgidkwYRjCM3yK5Me+s18v0AADRQFuY=; fh=1MEQxOGYABaQPNQS1Ckioh0rrUOwgCYjd8t5csgx5as=; b=kGg93f0xPDKWLzx2oztZWIGOSlcFWzuUj6FI/oO3s7cQu/yofeNyhcSgFq0VRgenVP 3l1uTOcYw0f2uWypcHY+/5+G/fVlnQVp45FC9xt99DitqFyOXFq0FQ/SMgg1+KRWkKTF QA9FcJG3KSiMz7xhm2K2Ecj35WJHeqbzEQtM5qhosvKOmSIxPs40Ymu9CVLVLKgFLc8W mZyiBr3T4rVx+/+MJLYtcHPT+8j+mmZ8HyqUZ+yasCt8mbum10busE2BkMgISnd+5kvJ iU07cBvJ9mhzRBwNA8LfuqS3vL6I/WV7Aiep+vs6b/gZUbSy+mnq+DwyHvLrxCybXQIP mefg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=dCOLIWu9; spf=pass (google.com: domain of alexander.ivanov@virtuozzo.com designates 130.117.225.111 as permitted sender) smtp.mailfrom=alexander.ivanov@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: from relay.virtuozzo.com (relay.virtuozzo.com. [130.117.225.111]) by mx.google.com with ESMTPS id ffacd0b85a97d-48e3805bf31si3691881f8f.75.2026.10.23.06.20.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 23 Oct 2026 06:20:12 -0700 (PDT) Received-SPF: pass (google.com: domain of alexander.ivanov@virtuozzo.com designates 130.117.225.111 as permitted sender) client-ip=130.117.225.111; Authentication-Results: mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=dCOLIWu9; spf=pass (google.com: domain of alexander.ivanov@virtuozzo.com designates 130.117.225.111 as permitted sender) smtp.mailfrom=alexander.ivanov@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=virtuozzo.com; s=relay; h=MIME-Version:Message-ID:Date:Subject:From: Content-Type; bh=D6w0W9dLFcTRcgidkwYRjCM3yK5Me+s18v0AADRQFuY=; b=dCOLIWu9IOwb LNPHlBskNb1oD3YFiIUZr3mN4RWA2+Mjw8euQxR10ij7MmTZWoG2fzNYAxVFyf7/ZUhIoX+t8O4p5 ah59yeUIvtr+0EnFf0pyKDvDpSdNemAcCXY/lXqCoWTAsAOsznbOqDRqxxQlrKki110ula17h4XPz xy162rGE2jilwAgxeR/Q3d1Xs1ZeRIVK54fn2CuSyXv41Vy/NtDvn0LpeWQkBauBX6esM7Lh898+8 4p4w97vhB8q1T42Lx2mFCcSGVY3fD1d+zeL3eo79uVITfu0vx7tCSNqDK7NP3+8+w8EZUjz5jLdlX 4P38fGElNzAGEAJ1rci3Wg==; Received: from ch-vpn.virtuozzo.com ([130.117.225.6] helo=sky) by relay.virtuozzo.com with esmtps (TLS1.3) tls TLS_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1xKF8D-007iDn-2g; Fri, 23 Oct 2026 15:20:08 +0200 From: Alexander Ivanov To: andrey.zhadchenko@virtuozzo.com Date: Fri, 23 Oct 2026 15:20:08 +0200 Message-ID: <20261023132008.2304901-4-alexander.ivanov@virtuozzo.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20261023132008.2304901-1-alexander.ivanov@virtuozzo.com> References: <20261023132008.2304901-1-alexander.ivanov@virtuozzo.com> MIME-Version: 1.0 X-OZ-Fwd: true Cc: devel@openvz.org Subject: [Devel] [PATCH hci-8.1 3/3] drivers/md/dm-qcow2: do not revalidate inconsistent persistent bitmaps X-BeenThere: devel@openvz.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: OpenVZ development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: devel-bounces@openvz.org Errors-To: devel-bounces@openvz.org qcow2_check_convert_hdr() ignores the autoclear features stored in the image, and qcow2_parse_bitmap_ext() sets the bitmaps bit whenever no bitmap has the auto flag. If the bit was already clear on disk, a writable open sets it again and marks the bitmaps extension consistent. The qcow2 spec requires to treat such an extension as inconsistent, since a program without bitmap support might have modified the image. Keep the bitmaps bit only if it is set in the image. https://virtuozzo.atlassian.net/browse/VSTOR-138887 Feature: dm-qcow2: block device over QCOW2 files driver Signed-off-by: Alexander Ivanov --- drivers/md/dm-qcow2-target.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/md/dm-qcow2-target.c b/drivers/md/dm-qcow2-target.c index 2d1e5d4e1b3a..0285427dd795 100644 --- a/drivers/md/dm-qcow2-target.c +++ b/drivers/md/dm-qcow2-target.c @@ -835,6 +835,7 @@ static int qcow2_parse_header(struct dm_target *ti, struct qcow2 *qcow2, struct file *file = qcow2->file; loff_t ext_start, ext_end; struct md_page *md; + u64 raw_autoclear; int ret; qcow2->file_size = i_size_read(file_inode(file)); @@ -865,6 +866,7 @@ static int qcow2_parse_header(struct dm_target *ti, struct qcow2 *qcow2, max_len = upper->hdr.size; } ret = qcow2_check_convert_hdr(ti, raw_hdr, hdr, min_len, max_len); + raw_autoclear = be64_to_cpu(raw_hdr->autoclear_features); kunmap(md->page); if (ret < 0) goto out; @@ -914,6 +916,9 @@ static int qcow2_parse_header(struct dm_target *ti, struct qcow2 *qcow2, goto out; } } + /* Bitmaps invalidated before must not become consistent again */ + if (!(raw_autoclear & QCOW2_AUTOCLEAR_BITMAPS)) + hdr->autoclear_features &= ~QCOW2_AUTOCLEAR_BITMAPS; ret = 0; out: return ret; -- 2.53.0 _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel