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 BF34180E33 for ; Tue, 27 Oct 2026 17:50:42 +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 69RHnUcm031976; Tue, 27 Oct 2026 20:49:31 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69RHnUcm031976 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=openvz.org; s=default; t=1793123372; bh=BdH3CfuWUzKBt5punYDkUKmGHnb6dbh7ui29CLbqkME=; h=From:To:Date:In-Reply-To:References:Cc:Subject:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe; b=r1mSzbWa3T33mtJ4Dk4lIB668BE8AEiWBE/WGEpsbDK5fzbJOvODzl3Cg5NhOU8dM bmFwTf0pag24b0fupKVyPeaJTaAhk6BJg1q6u9P4wYIyGpIW5mB+GrBbaY/7X78W19 rhzH8/QWB2q0POW5T561GYwz8rxxDYARTE2ESKnreWzeTj7KYhpUecEzfEyOe/iI2r 6U/mmnR80XMukJObylWoX6ta24YxS3XFfl0zVGHM+Y/Bo/3U91CFpSNUO0SpXVKskC tzyKnA7NlOgx5Wq8deNU88aq0KoulAjRbcNLMDlyZ7ehD/yaD9N8yddu157oWQYUzI c8jYuwpphZ7/w== Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69RHnRoC031965 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Tue, 27 Oct 2026 20:49:27 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69RHnRoC031965 Authentication-Results: mail.openvz.org; dkim=pass (2048-bit key) header.d=openvz.org header.i=@openvz.org header.b="ZOvfIXhd" Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-4a70b42bab0so981185e9.1 for ; Tue, 27 Oct 2026 10:49:27 -0700 (PDT) X-Gm-Message-State: AFq9FYKTN2b6ECIBUrxP0dAHGj7BdOgLDYs619CWFgB+l8plN339eYsX UJCaFYj/glg+XByTaCSfztzvrrtZZNS6J12ls0oWVvQ8B/jz3SnGUWCc42wPtn4xyJyO4pWOCGk kDmZrEryoDWmau6SoalS84rmVvvOotv/YWk0VEJwRzO/97pkUexdOvw== X-Gm-Gg: AYBFou0lH32hRWe9iIZQPdIxEUOjX85owpZBErPgFis9L8AXdIGAQuxRbFI19Oz3nlR 1cwNe9VI771syNdalyIht/yuC4Iy8qhcB9lywIavnVdjG+GjOUuWn7IQ8scPebYhFIOJJhkkE4N B3d86tWddq3BUjWEqTSaxXfkJAbz9ZVF5+R4KcTbt+UDgMgkiFPWG3XI9I5DPyNV4rV1yv/Xp9B h0mucRSpxkbDX0RP/E0D4Vuut8bw5ZBl7fxk07+2eVGZWIs2feGz0xAvmr93QWqLYeRHagX/cPY 69DB5pTdRg== X-Received: by 2002:a05:600c:3b11:b0:4a2:18c4:61a5 with SMTP id 5b1f17b1804b1-4a7c0486258mr79601225e9.6.1793123367535; Tue, 27 Oct 2026 10:49:27 -0700 (PDT) X-Received: by 2002:a05:600c:3b11:b0:4a2:18c4:61a5 with SMTP id 5b1f17b1804b1-4a7c0486258mr79600725e9.6.1793123367000; Tue, 27 Oct 2026 10:49:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1793123366; cv=none; d=google.com; s=arc-20260327; b=WiejZO1oEQwDWawmzJzUJpNtoOZdy04t22MIdGn7sC4UejKd5aRku72PMUzhPh+Pp+ 7Ewwtq08padaykEeSDtNXqaSyk3ePOftE3Yft2fB6KFMkJn7uiTdNgS42tfWjDIuFZhz rDR+aXVV+PE4+z4L/xZe5JcvmyrESZqHsQjaEhIIF38R1llfL9OBJTLJYlTAXb6zUhkE QQjAa7mm9vsOxSl7Ko1ol815jwCK19lcFKoGtRhavEKyW+iUj28a3+x5iHYdZDgOmhnn Qiu2ByXU8YRSySKUfO+iVqR+nL7rmNST4CGG/+GNWYvyuqBTmW2jfBqEMx3ad1wTCp+y +01w== 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=UBOLKkPF+RdDALivcUAR9uoED9c8RhIYM6t2VNj/GOo=; fh=Kr/R+ZQiC/tid3qUs5C3px+AHPSuipOrrdrDcZfSlMY=; b=FDWg/HwSlhkjZh0qN0+CX77sKzUA02rUmOB+uUxa92s27FJ4N3s3W0GE/57sxokTki VOncNb5Et9BpVgEsIT9HE5Yk8yoiV7h0JDvIumyYuklTRUEtKu05y8bmHcWoWuKfdyhQ UWBAPAXikGQSv07b0n8qIkwEaOslnTg78X9AFTYL3LQ553iizuskFWFXaG29bgmgzj0C nEeEabpAHXKcJew8b6JMkTn/3XtOIoO0onCBO+MbXAxl58YEm2j5r/9BJY9bbZMswGMZ sgMgzrUD0qijJgoXC95zJ9Z8hYC6VDfp0A6GlfaKD68yTuBrtq238XGdFGsDI/GC/q5H jlUg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@openvz.org header.s=google header.b=ZOvfIXhd; spf=softfail (google.com: domain of transitioning den@openvz.org does not designate 2a06:5b06:b600:300:a5e9:5d2:969c:16de as permitted sender) smtp.mailfrom=den@openvz.org; dara=neutral header.i=@openvz.org Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41]) by mx.google.com with SMTPS id 5b1f17b1804b1-4a35a0aa9e8sor10117015e9.5.2026.10.27.10.49.26 for (Google Transport Security); Tue, 27 Oct 2026 10:49:26 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning den@openvz.org does not designate 2a06:5b06:b600:300:a5e9:5d2:969c:16de as permitted sender) client-ip=2a06:5b06:b600:300:a5e9:5d2:969c:16de; Authentication-Results: mx.google.com; dkim=pass header.i=@openvz.org header.s=google header.b=ZOvfIXhd; spf=softfail (google.com: domain of transitioning den@openvz.org does not designate 2a06:5b06:b600:300:a5e9:5d2:969c:16de as permitted sender) smtp.mailfrom=den@openvz.org; dara=neutral header.i=@openvz.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=openvz.org; s=google; t=1793123366; x=1793728166; darn=openvz.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=UBOLKkPF+RdDALivcUAR9uoED9c8RhIYM6t2VNj/GOo=; b=ZOvfIXhdXufQSlgGZ2t+HASbf+5Jkpisxed8gwbwTmRQU5bl8f4Tf2XYZgUmEICLeU ufj/pN9YA8uDdOIRzu6Qq3Jd8iedmqQghXvD+soAxpkZNpIGP1C9eUimxcwJOL5Ha8z1 boPz4edDuEO4MadEYMAaOfWBbCRiAdxRZ1/fqPeXfAHIYvlvl/PQlXWoUrnrvY4NjoSm IvAyq39knEkpGvoKOoJmm0MlQT31H07jKvkaF+LkmHPi+d725uwMGltEvrsbsdQ5o1dp i0q/nhAf2GRmbtL+fE8vXNtvOxNY32V7zOU6RiQz0WICykJW38jgrkA1Zg7hQFlUveUl TiGA== X-Received: by 2002:a05:600c:1d05:b0:49e:65f2:db64 with SMTP id 5b1f17b1804b1-4a7c0485179mr73329925e9.5.1793123366524; Tue, 27 Oct 2026 10:49:26 -0700 (PDT) Received: from athena.sw.ru ([2a06:5b06:b600:300:a5e9:5d2:969c:16de]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a92fce709fsm5939195e9.5.2026.10.27.10.49.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Oct 2026 10:49:26 -0700 (PDT) From: "Denis V. Lunev" To: andrey.zhadchenko@virtuozzo.com Date: Tue, 27 Oct 2026 18:49:21 +0100 Message-ID: <20261027174922.2254893-2-den@openvz.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20261027174922.2254893-1-den@openvz.org> References: <20261027174922.2254893-1-den@openvz.org> MIME-Version: 1.0 X-OZ-Fwd: true Cc: devel@openvz.org Subject: [Devel] [PATCH hci-8.1 1/2] dm-ploop: fix a failed merge failing every later merge on the host 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 From: Denis V. Lunev ploop_process_merge_latest_snapshot() collects the status of its fake merge pios in a function-local static. It is never reset and it is shared by every ploop device, so once a single pio fails, every later merge on any device stops after its first pio and returns that old error, until the module is reloaded. A failure on one device also aborts a merge running on another. Keep the status on the stack. The pios carry a pointer to it, so the function must not return while one of them is outstanding: every exit already waits for service_pios to drain, and a BUG_ON after the wait stops the kernel rather than let a late pio write into a dead stack frame if that ever changes. Fixes: 6ddad5a4d226 ("dm-ploop: Add ploop target driver") Signed-off-by: Denis V. Lunev Feature: dm-ploop: ploop target driver --- drivers/md/dm-ploop-cmd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/md/dm-ploop-cmd.c b/drivers/md/dm-ploop-cmd.c index 5fa78e6cff9a..9084ca37f45b 100644 --- a/drivers/md/dm-ploop-cmd.c +++ b/drivers/md/dm-ploop-cmd.c @@ -671,7 +671,7 @@ static void service_pio_endio(struct pio *pio, void *data, blk_status_t status) static int ploop_process_merge_latest_snapshot(struct ploop *ploop) { - static blk_status_t service_status; + blk_status_t service_status = BLK_STS_OK; struct bio_vec bvec = {0}; struct pio *pio; int ret = 0; @@ -711,6 +711,8 @@ static int ploop_process_merge_latest_snapshot(struct ploop *ploop) } wait_event(ploop->service_wq, !atomic_read(&ploop->service_pios)); + /* The pios point at service_status on our stack */ + BUG_ON(atomic_read(&ploop->service_pios)); if (!ret) { spin_lock_irq(&ploop->err_status_lock); ret = blk_status_to_errno(service_status); -- 2.53.0 _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel