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 2A96D80BB3 for ; Thu, 22 Oct 2026 14:52:14 +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 69MEp1AY009817; Thu, 22 Oct 2026 17:51:01 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69MEp1AY009817 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="fBm9QQes" Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69MEofGg009771 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Thu, 22 Oct 2026 17:50:41 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69MEofGg009771 Received: by mail-wr1-f69.google.com with SMTP id ffacd0b85a97d-48e0ef019a4so1613075f8f.3 for ; Thu, 22 Oct 2026 07:50:41 -0700 (PDT) X-Forwarded-Encrypted: i=2; AKwUvByqP4LFJfH3VqKa317keXvCT7Uc+SopIuJSliWItnCxxJ+giQa4vN9qM8T+jRiIlvPQjrLRFw==@openvz.org X-Gm-Message-State: AFq9FYLCKykXBUlRZaKpVurbasxEUbd0a0HvwFMb7cSexo7QHNBgc1eg qbGUj9xHFuBIY5LpBkP8Kc5k/LiRzCKi9ZlzfwlVDeCghSzIKlVE9/LxOA8Q71TfgtGDpbma6TK cFaEq02qIDPfemmhP6Zvllo/S83+EmQpwgLM5ViHtN3fbwl7agc175g== X-Gm-Gg: AYBFou2LNcwsWA2+rqmboVQyiJyyjgM7hzMKd57v8htz6Q5+ZbpI7duQQvI/B3rLBjq 9rqOiymFlK9YeOLfb1gNqy/leFOLHJoOsnpWbidatESnh1LysCzmsiFgdgHkrPja0D0y99DnVMy RI2pQh9D6xSow10ua+7PR2NhAhyvsbzGbIkWJsso16C5fh3yULg5NlqZWS2YcyChvXsmMAW+IFO S6WlMsDbVW7pGk89ieGQbaksXg54aBfCoh7Uvy93YXb+Hvs/QHLBhjbxd/xyx/tdOBcHOZ0Jhwb tscF2L9KFVM060dluWgSHT1pNjluEZ+kUrW4aWIYLOqN3NybCcxRkFPPFsfPnuDBn9G/ZHase/k o54sP6LRD8g6K/P+naFiFMPKwYtZo X-Received: by 2002:a05:6000:29d5:b0:48c:4658:602b with SMTP id ffacd0b85a97d-48e264a65cemr8261787f8f.10.1792680641147; Thu, 22 Oct 2026 07:50:41 -0700 (PDT) X-Received: by 2002:a05:6000:29d5:b0:48c:4658:602b with SMTP id ffacd0b85a97d-48e264a65cemr8261649f8f.10.1792680639109; Thu, 22 Oct 2026 07:50:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1792680639; cv=none; d=google.com; s=arc-20260327; b=kn7k3szJxx9QQSPBuy06zU8mdtwHz58oJhqlGQE1Gcn9cd/d7poLLrtrqEBqrNi96b SEPWr0RWeH7VJB0mP0ObN/EV8bQj8Rxs7jW+/5A6N9DphNq06dE83Wx/g1bsIVxC1Htu GGZ14M2dw8RIXHRFG6R0vNKFPdJvmlTH8HpdQyz7N54kdWjhLE6Lw+siSzot/eTNvU7Q FN1dokDYrbNtiTX5+xiwfGz3dVrO4vJAr3RKTba4JLeIqgHDLNdtQT0MrHUZ1DnsXaCi FvEh0qPqNjQ99SjN+D/SxD+86ntzYPBmhnNN2ofmOpZnK/ekFtQBxUN3IorhCfRz4kks GGgA== 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=hAfhtez2XH5tVg4VB5GIcFF5OQexpFYw41Hc2gRUWRc=; fh=1MEQxOGYABaQPNQS1Ckioh0rrUOwgCYjd8t5csgx5as=; b=WPIgxcRcq89oaIzJxWKkAv0BswrHUUKZmwzPpKtRYlGlkiHQXoMd3dxZwM1IxaK08n Wfu4PjtQKJZ2RlLBfW9EQRQUH6+icUATVrblXm+aXEG2fLDvafXhhJx0nixf2kf9PKf7 QHfEtm+/xogqTRnqZfEfxH6aSRpgxbO9KpSAUI6Nzau6+W9+WiJJKyy+BfGReWYdau01 n/jks2nVBycGAT4rcMwuKnXN+rntXwbFnBpFhwsvgKX4/KQdFXAwnp231Bg7Uyd3kT2S SKJYV24Jt43KZxppMvI2j3FkxoMmExczTgyU82HRByisFEptd/ViSIAN/h0RnN3YEt7U Lj8g==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=fBm9QQes; 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-48e2588349fsi11615748f8f.379.2026.10.22.07.50.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Oct 2026 07:50:39 -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=fBm9QQes; 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=hAfhtez2XH5tVg4VB5GIcFF5OQexpFYw41Hc2gRUWRc=; b=fBm9QQeskf9N DbvRxvTX+W35AHdRAPLFP1WrCfXZSfU39DZ9q4I6Z9uVXJJEV8oQ6FJl8VEU7d6b7sqig/lXBdFBl WhuuJu9iNlwesFy19RkUkpxGh7ZetbkSXft4XyYAEgVR8Pug863MMELBp+ZvcGR16fju6IWxRjD0+ D5HK1O5Ekf6KFKWQSPM6eP86/xBCtGaGNdTw6Rk0Sw03HuRV/7Nv8SOcJjgHMFP7nEP+3tRS/8B8y RfqYKn10B/w75HxQ52aquSwraxj7Z2/vFv1NPtCPMgKLOI9xn6qX67/3JWxzTImvNkYp4Fb5cH813 fOJUqgThKlUaYpVc7mMI1g==; 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 1xJu4D-00GYCQ-1W; Thu, 22 Oct 2026 16:50:36 +0200 From: Alexander Ivanov To: andrey.zhadchenko@virtuozzo.com Date: Thu, 22 Oct 2026 16:50:30 +0200 Message-ID: <20261022145032.2128679-5-alexander.ivanov@virtuozzo.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20261022145032.2128679-1-alexander.ivanov@virtuozzo.com> References: <20261022145032.2128679-1-alexander.ivanov@virtuozzo.com> MIME-Version: 1.0 X-OZ-Fwd: true Cc: devel@openvz.org Subject: [Devel] [PATCH hci-8.1 v7 4/6] dm-qcow2: complete wbd before ending the data qio 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 data_rw_complete() calls qio_endio() before complete_wbd(). qio_endio() drops the inflight ref, so qcow2_flush_deferred_activity() may return on suspend while complete_wbd() for a failed L1/L2 writeback is still running in AIO completion context. revert_l_entries_update() then marks clusters unused and dirties R2 after the flush, and the change is never written back. Complete the wbd first. The md writeback path already does it in this order. https://virtuozzo.atlassian.net/browse/VSTOR-148171 Feature: dm-qcow2: block device over QCOW2 files driver Signed-off-by: Alexander Ivanov --- drivers/md/dm-qcow2-map.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/md/dm-qcow2-map.c b/drivers/md/dm-qcow2-map.c index 810dd22425ae..ef832813b718 100644 --- a/drivers/md/dm-qcow2-map.c +++ b/drivers/md/dm-qcow2-map.c @@ -2884,13 +2884,14 @@ static void data_rw_complete(struct qio *qio) spin_unlock_irqrestore(&qcow2->md_pages_lock, flags); } + /* qio_endio() drops the inflight ref, which suspend waits for */ + if (finalize_wbd) + complete_wbd(qcow2, wbd); if (call_endio) { if (bi_status != BLK_STS_OK) qio->bi_status = bi_status; qio_endio(qio); } - if (finalize_wbd) - complete_wbd(qcow2, wbd); } static void perform_rw_mapped(struct qcow2_map *map, struct qio *qio) -- 2.53.0 _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel