From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.openvz.org (unknown [69.168.225.77]) by lore.virtuozzo.com (Postfix) with ESMTPS id 5663680777 for ; Thu, 8 Oct 2026 14:05:05 +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 698E3o5m024533; Thu, 8 Oct 2026 17:03:52 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 698E3o5m024533 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="BlsJioM+" Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 698E3ePl024497 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Thu, 8 Oct 2026 17:03:40 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 698E3ePl024497 Received: by mail-ej1-f71.google.com with SMTP id a640c23a62f3a-c251c140b41so539157666b.3 for ; Thu, 08 Oct 2026 07:03:40 -0700 (PDT) X-Forwarded-Encrypted: i=2; AKwUvBx1ghhYYGXJHG7Pg3JFv5ig0/zEZePHDpDa92g1FZpAGZWnJmupVOh60hL2aFsxahyfgW2x6g==@openvz.org X-Gm-Message-State: AFq9FYL2zjuHUSywb8xDN67uadB25zaKUVvrxp6/Y4XCid4BhwymddTl r7NGegdSJkfr781ypJA1AUcQnoX2ykwJE3rYTpczs6H2zN43u2W6Tm7fIEc3LWzM2scVg0rOPUv azx27Z7VUkwrl590dJXawlU0SdtjzcQL8ovHPJ583uJMvYfBktIERMg== X-Gm-Gg: AYBFou3Whx86+jPQMGlsjMJdbxOYlAw+viyG0YLaEkPUBjbNDjV/YJT4ZLnFG7PzVv9 awI7wPUQyKU7a9NpQI67pKNePtT1Mgc22YVUOyVb/Jy4YeSPnglvkbfbATRb0Q/OZRmUJVHSOBq w7rjHOqDCiANUizrgFgQRUEiHmQYm0hyr4rHBifj7mgsHB1LM1Ac1IUhPwLOIJEyvyY/W1mMw2H UI3FmErpN7bytN3I2FcFOzs8KY6qMGKnv/OGHPTQdaQU3Bq4uZT5jZb712UJnH+UGEnXDins/bR vuBqIj33ys8pSr409S54QQvb73yZXcqzCfp7E/aAPqISNjo0K/H1EPEhM5G+DzjzTap1+ZPx5yy WgDhbJ3lrvS+faHgD/Byo+yioh9s= X-Received: by 2002:a05:6402:5011:b0:6ac:abb1:60a9 with SMTP id 4fb4d7f45d1cf-6aff47a4f1bmr5160938a12.35.1791468218710; Thu, 08 Oct 2026 07:03:38 -0700 (PDT) X-Received: by 2002:a05:6402:5011:b0:6ac:abb1:60a9 with SMTP id 4fb4d7f45d1cf-6aff47a4f1bmr5160916a12.35.1791468218168; Thu, 08 Oct 2026 07:03:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1791468218; cv=none; d=google.com; s=arc-20260327; b=Q1l96AymV4Fzib3xXoVpmCNSaZFz1RbVzIZEBHiInXlcmAjaMvXbfi7VhFazu6JsBZ r8GXRuJjwtzB9d8ib/wOHStUyDCAzjRXlUIPuIurwyIcTeZm3vS+sG5uy9JZkaXo5a4q yi87vOhmy9iN6JPBLInhx3OhWP9RiCOlEmPqh4g2NkMK8tQSaTvDiOrjB/zGYtxECl7P Nay/vY1Zqb1TbZCWqUyJjed2jjKkAMC4+Z4S5jVLX6aCSkjywC97nlJ4kYT64scMQmJb WTan7Agx2dHWCVUHwN3evrK2oGrvZLmHJbI24Y6PTsKEaH5i1+U899gDZ3rlA4CRnlTF RhvA== 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=ll8xl3FNa2MYLKtS0t7PBn0qePCIivBrjtKewGUrCdY=; fh=jiFD8gjZllyls1UFJ+1kA4uyOnjRU7bVpV3P+S6CTV8=; b=OFqwFSDMrcM0+X8PptgOuxxgiGflaCevNMWTmsk+q/L8a73PBVVSJqsuzyxMOzWvPQ NziphATU/LaGL2VqfUuC/xDatFoILeazRp+o8KF1XbhbSx3ZlSUkTk2cDEm1AajY5to2 QgAcFJqcpBqBWue3OdAl7fR0XxEdG42JpHMiULFV4LH3pC+C+d4jlfPojZq7e4r/ADQp zM8kD+C7s47rRVCwv0SyRJOnOKr8NxsmT4KB2FF+JsNayPzaxCW5kdGtkg2ie127OCQb 6SgbinJPedetb9yD0/Z0RVkWwCNOdV9JM71mnoA/0s5NV4HwBMHlWpffDqEwMRKWVt9B UXWA==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=BlsJioM+; 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 4fb4d7f45d1cf-6b009e84658si3300515a12.122.2026.10.08.07.03.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Oct 2026 07:03:38 -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=BlsJioM+; 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=ll8xl3FNa2MYLKtS0t7PBn0qePCIivBrjtKewGUrCdY=; b=BlsJioM++Ah3 1GzK/w5j9EnTnQp0tRAPntpvr76cfTg5uIURKJWAlZ/NZBiRF3Y4sjU40o2wAG9U4/UkiSFBWI8s2 IsIZh4lj/eNO/Opji1SF/ScjO4ng+91Fi3Pxi9HSNPNVIJzAquX6u0O0sai/3zYz5Au4akCOxGd/j 8chvhgtlSrivo1uUFdrVcb5oTmv8ekk4gTjMI9F3qPAmDQcVLaDYQPwypii6SF3Gubvnifgv82h3c OhdYh9ibp8i5Tj7Z6G4c0s4M7VApIfTd5wTOaUcE+x6iPEHZJ1e3aWOSa1VDFB4O2KCoc1sRs1K9U sSHPyHO2EiXMgxpb+4k98Q==; 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 1xEofN-00FAkW-25; Thu, 08 Oct 2026 16:03:35 +0200 From: Alexander Ivanov To: den@openvz.org Date: Thu, 8 Oct 2026 16:03:30 +0200 Message-ID: <20261008140333.614909-3-alexander.ivanov@virtuozzo.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20261008140333.614909-1-alexander.ivanov@virtuozzo.com> References: <20261008140333.614909-1-alexander.ivanov@virtuozzo.com> MIME-Version: 1.0 X-OZ-Fwd: true Cc: devel@openvz.org Subject: [Devel] [PATCH hci-8.1 v3 2/5] dm-ploop: set delta is_raw before applying its mappings 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 ploop_apply_delta_mappings() takes is_raw from deltas[level], but ploop_add_delta() sets deltas[level].is_raw only after the mappings are applied. So a raw delta is handled as a non-raw one: its md_root is empty, ploop_md_first_entry() returns NULL and d_md->kmpage dereferences it. Set is_raw before applying the mappings. Also skip applying the mappings of empty delta (e.g. raw delta of zero size): with nr_be == 0 the BAT iterators never reach the last entry (nr_be - 1 wraps around), so all the clusters would be mapped to the delta. https://virtuozzo.atlassian.net/browse/VSTOR-148171 Feature: dm-ploop: ploop target driver Signed-off-by: Alexander Ivanov --- drivers/md/dm-ploop-bat.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/md/dm-ploop-bat.c b/drivers/md/dm-ploop-bat.c index a7849de8aaa6..2cb06193eaf9 100644 --- a/drivers/md/dm-ploop-bat.c +++ b/drivers/md/dm-ploop-bat.c @@ -501,7 +501,10 @@ int ploop_add_delta(struct ploop *ploop, u32 level, struct file *file, bool is_r if (level != ploop_top_level(ploop) && nr_be > deltas[level + 1].nr_be) goto out; - ploop_apply_delta_mappings(ploop, deltas, level, &md_root, nr_be); + deltas[level].is_raw = is_raw; + /* Empty delta has no mappings, and BAT iterators can't handle it */ + if (nr_be) + ploop_apply_delta_mappings(ploop, deltas, level, &md_root, nr_be); deltas[level].file = file; deltas[level].mtfile = kcalloc(ploop->nkt_runners, sizeof(*file), @@ -521,7 +524,6 @@ int ploop_add_delta(struct ploop *ploop, u32 level, struct file *file, bool is_r deltas[level].file_size = file_size; deltas[level].file_preallocated_area_start = file_size; deltas[level].nr_be = nr_be; - deltas[level].is_raw = is_raw; ret = 0; out: ploop_free_md_pages_tree(&md_root); -- 2.53.0 _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel