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 E6DA580E7E for ; Tue, 3 Nov 2026 12:40:09 +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 6A3Cck3j005101; Tue, 3 Nov 2026 15:38:47 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 6A3Cck3j005101 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="Kl5RA5oc" Received: from mail-yx1-f70.google.com (mail-yx1-f70.google.com [74.125.224.70]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 6A3CciXl005097 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Tue, 3 Nov 2026 15:38:44 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 6A3CciXl005097 Received: by mail-yx1-f70.google.com with SMTP id 956f58d0204a3-67686ccd1b6so6052507d50.2 for ; Tue, 03 Nov 2026 04:38:44 -0800 (PST) X-Forwarded-Encrypted: i=3; AKwUvBy+JKklNO6pmyVkV2ghe9Crj/vEsns+wrZG0nfi85c8/bU2RRkJShwoH7TCcQNft2BhcP5u/g==@openvz.org X-Gm-Message-State: APuU4Z/FYqg4psvVkMUQ+BZPph13f5ypSePcbRcgi3CZnCvaLm+F1vz0 xBPUAD+GyyufvMF4t9Tz1Y8qlRV9sgusuJNU7972m/3a3JQ3ICAMywNS9y4AMX12WwfEa56MHi/ ftZvec+uOU+iIMPFBlZxkDgZprGccxvhE7i4ztSs4n9hvYXcT7ShPTg== X-Gm-Gg: AYBFou0XsyLesPPjXB7PNWoucJ6M5WWyF0U5Bqc5ozgfjnXDQ/2ZYEGXTFFrf0IAUYq DBrAyn7f/cDCy0SfnqSZLRdHYrpNEzrls/zpe6viIhWUtbtxF7fzNi5pLIcjmaoFXwAvg6RFiaC OPO5ByutBdOcTZMbk2BNI2t84HF+JsEp+Tv+K6+MhfOIB0jDy/TF5zGlDAPrJvvxiSpltplFMgx U/wL12D3mVcP1D/0zUSCAEBeF+TOS8dcGfoUyYtPlHscRwW1ZPdpkkAr/owDnISpQqseMlM6MrV GjMmH94R9BBwo43IhOkKhev+ALATS3OEJ9qQ3p92qeM/MZX7izlQX8Z4OqKy8htKHq88LGi59vl HVhR5ZEawq49a2SB+b1X2dqjueT9wOO+AS5h5deBCYQFea1cZVHddtlRVGKks+7IgieI5IUsruY siSTE6jSdo3vcY/EE2p1JLgEG/8gHZCPOf X-Received: by 2002:a53:dac5:0:b0:679:b50e:92 with SMTP id 956f58d0204a3-67ba502ff89mr7695060d50.52.1793709523634; Tue, 03 Nov 2026 04:38:43 -0800 (PST) X-Received: by 2002:a53:dac5:0:b0:679:b50e:92 with SMTP id 956f58d0204a3-67ba502ff89mr7694956d50.52.1793709522589; Tue, 03 Nov 2026 04:38:42 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1793709522; cv=pass; d=google.com; s=arc-20260327; b=Ybz6Lk7OTU5CKtTw5419T5T+vIuyGvn1TezMyHzh/tDGz9Bbj6XcOAt4GIbkMmGO3f Ldw/y0786rUvbMHzv8qAGCYqDzcsMWadll8lFlBe2wdIWKl+iOz8jPtIYhg59otOomsm I3aRgyOG4S9B3NJ2BXCLtOJo8Al+du9NSy02ilb5oKRWAbQcHx6awee8Sleba9iLeFGo 9fSTPtYZgTxCARbIdqOFPTZskkueKy9KWkCVgtGk032US+vzY357BALfJlUaMdLYnX9I q3/GgHMcBs5EDnqQ0PJwWE1MEa69tUwlh5NHiQ67Xtcaz43xrS+KkuL53So+YUVkawSC Ekyg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=mime-version:content-transfer-encoding:in-reply-to:from :content-language:references:cc:to:subject:user-agent:date :message-id:dkim-signature; bh=wT9PLeEptbTGKOUiaXjpsRgHx417vyxsCXhkFJsxXQw=; fh=06nUUmR13SHvd2dw0reOfMzJeMq0aBwvR8W2JDtb/AQ=; b=KhD2ipEUWn5bWeT5L4PBjn2U0K4/+IYPEwY102xir/JWAX+v2S8vF70J5o+RCzaVBK SQDHfJ+KCUSueB7YPJL2lKUkC1247hKkIugyHTt7dLSprpyLAb60MSTVfq+tzOB+45Gd ZgkAgBQL7j38SzEaxQcKJVN+LaXrdcptG2xBs6c2NQu8w0q2Vb4x/9xll0P1Bo9AWIdm vbjj/80eMJDnQC/oyxrt5r0K0k1AG37Cv26yz7aBnijCWidx2nBf1B40lCzT5oxsZVuq VqSbt4mWkiqIWSNZIt/De05PRZXZykQdwL+RNY4YlxHIm/D3FJ58JIQPEoD9XB0SOtRf TRiQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=selector2 header.b=Kl5RA5oc; arc=pass (i=1 spf=pass spfdomain=virtuozzo.com dkim=pass dkdomain=virtuozzo.com dmarc=pass fromdomain=virtuozzo.com); spf=pass (google.com: domain of andrey.zhadchenko@virtuozzo.com designates 2a01:111:f403:c201::3 as permitted sender) smtp.mailfrom=andrey.zhadchenko@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: from AS8PR04CU009.outbound.protection.outlook.com (mail-westeuropeazlp170110003.outbound.protection.outlook.com. [2a01:111:f403:c201::3]) by mx.google.com with ESMTPS id 956f58d0204a3-67baf3e2adcsi8973392d50.236.2026.11.03.04.38.42 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 03 Nov 2026 04:38:42 -0800 (PST) Received-SPF: pass (google.com: domain of andrey.zhadchenko@virtuozzo.com designates 2a01:111:f403:c201::3 as permitted sender) client-ip=2a01:111:f403:c201::3; Authentication-Results: mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=selector2 header.b=Kl5RA5oc; arc=pass (i=1 spf=pass spfdomain=virtuozzo.com dkim=pass dkdomain=virtuozzo.com dmarc=pass fromdomain=virtuozzo.com); spf=pass (google.com: domain of andrey.zhadchenko@virtuozzo.com designates 2a01:111:f403:c201::3 as permitted sender) smtp.mailfrom=andrey.zhadchenko@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=q8wgxi2OzxtkRs0U4zC9vmv8xPiJHoNKiAKT4MLiBN7B9PnJVYsji9RxuKKGt9ODnMVi9JAHj83gUyisuVQwUKSBR2nQEYxrZvMk+RFh1rwU/n2f/2u+C2soB7WRmckDgdCOMcmwfYhsrVa1/4AMLP6bNKTWpyZQSk0jbC9E+Fha5KJjq+uLH3BEH4Gl5EwSoCJnwJH6cl8/lQ6LB28Oi/xRahPHzxj3wEX77FYnEnUCOU7N4s1TxwIsp6RpYFDD4SOnx7j7rti/oSoy4gSAJbL19lLxCafUg9hKLNwRJXzdLAWrHHMjYdARM0qviCSKsALzWp6tlGCaEw8OvTsmYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wT9PLeEptbTGKOUiaXjpsRgHx417vyxsCXhkFJsxXQw=; b=T4/BR2XLS0ghPahexVaI4D8zk/wo4CsYFvnkw6CJEhtOvoKdX/Ja2lbtfensGRCbs887K7xep9geEvWSwzqOdWX08AOmCgkZ2X5hP2vWB0jYgAw/NTdiZ4HEBBoKG/Czi9LVYvO7y1/6OE21Mcpc01ZTwpeSKM+UHnwVO3x1P9U92idZixZ9CTmHlvXgslLj4qrZSEJvt8cRUoy7isFEFMdWhPs9yycJELiJVYw6rvMM4xWsKLZNcQW8L9++4WnIGtEKqjbzRVmYvG2CEirZtWLMp7R5OBP2IYfKtCadNpqw40aF5c4+d8Ct+znEnEahK9uLZOrWd1gs1mlN+2ZtjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wT9PLeEptbTGKOUiaXjpsRgHx417vyxsCXhkFJsxXQw=; b=Kl5RA5ocMrSEIrWpB9fDW4oSGg+PYLwrn0XHjNF4RZSZG4wHnxLGhcyHnewg8rZ2N0md+8C1lXs5C9LGiFqjHnUc2Fib2q8qs01NOxOr0qXo8AW8IG5ty6hwLxoYNgVZkPgn8kGm5Gi111mnOXxwp3m61LVXVqWo7d+UT0hh+jgrjnLb1UMv5geLSj461Pw34c4e3RmAFv4zBQ+7H91b30W8QWlhxhsg4nIzD7hA6NHvEkWR4wI1y7UZ7/8wegj6Si4wmwTMvWy4JB839SmObQFcmBhMbf/zZ9r5+P4Xtco8v0NqodrspBcBg/OkaMdJcKgmHNbcwK8zG/MUMRIDSg== Authentication-Results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; Received: from PA4PR08MB6061.eurprd08.prod.outlook.com (2603:10a6:102:e9::13) by AS1PR08MB7428.eurprd08.prod.outlook.com (2603:10a6:20b:4df::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.592.8; Tue, 3 Nov 2026 12:38:39 +0000 Received: from PA4PR08MB6061.eurprd08.prod.outlook.com ([fe80::c3bf:e107:b1d2:6a00]) by PA4PR08MB6061.eurprd08.prod.outlook.com ([fe80::c3bf:e107:b1d2:6a00%4]) with mapi id 15.21.0592.007; Tue, 3 Nov 2026 12:38:39 +0000 Message-ID: <67598c9d-dba4-4847-826e-6aab20461ed7@virtuozzo.com> Date: Tue, 3 Nov 2026 13:38:36 +0100 User-Agent: Mozilla Thunderbird To: Konstantin Khorenko References: <20261103080358.723186-1-andrey.zhadchenko@virtuozzo.com> <20261103080358.723186-7-andrey.zhadchenko@virtuozzo.com> <179370066312.2382033.5229621205243216100.b4-review@b4> Content-Language: en-US From: Andrey Zhadchenko In-Reply-To: <179370066312.2382033.5229621205243216100.b4-review@b4> X-ClientProxiedBy: FR3P281CA0169.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a0::8) To PA4PR08MB6061.eurprd08.prod.outlook.com (2603:10a6:102:e9::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PA4PR08MB6061:EE_|AS1PR08MB7428:EE_ X-MS-Office365-Filtering-Correlation-Id: 8b691a1c-a430-43d0-89c9-08df39a762d5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|23010399003|1800799024|366016|6133799003|10067099003|22082099003|18002099003|56012099006|4143699003|261022075727099003|261021123027099003|261021121427099003|261102123227099003|261022105027099003|261028144727099003|261026140227099003|261026121527099003|261009223027099003|260925021911599003|260925021311599003|260925022911599003; X-Microsoft-Antispam-Message-Info: iFkDHSAB+iDudqMidfRTtyC9btph5qF/v6SQMsEPydVKtiSJYC2nL3f69v1BKb53JFI8rYAPlooKMW/A2LT2FMqE+9IQUnyiHeJPstK/fpmZt7ABey0QFwIm86SmB7QBFjjxcJ24VaYvRdXAa1+d0b4K79q6NDfH4wZWa26gehl/wGVTtOVcFXP4g5KmmtOFbztR7pWTTkW2lSh+dVsCCcO7YAkIhROQflupDn7qFfZ6uTrqgSrCoFIwPVpDNFqlcXc8mq04XXoovtt+y7k3T2zyLK3bwTOH96pwhXHZIGHXzzvJj416LL+6zGxWirmZMOJJzOJOMjrqbcKcu5toqwLdHYir6pTLld8XEM6SvhIGqEwRC1O7//PDjJ3Ia24tLQ2NO7I9R2ZsspfgbfFwo8g5PRnrZgSTMR3+hbh30SoMpt0nvsoSPIzvjACMUvPLzxgnMsrugVJx8jPNtc4P8LZ/Qmtfh8GLZU+BshAfEmyqkl0gJ6Qqxkz9z4+Ofoc4tI1F6hABTDGVI4sEl6GYXviWYXAflJCtekgk1sYinoKcK4CZwgw3KGAFlVCx+eOnYfO4/8jqDf6xUPGPNHhFCZ82A3s/EtFAop9N8v2ABWKYqtFx+KEZTEy8VxTr1mSBp9NMKXOqgDx9NHz6jxHINLVamIHFk4VTlS2/47R1Fts= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PA4PR08MB6061.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(23010399003)(1800799024)(366016)(6133799003)(10067099003)(22082099003)(18002099003)(56012099006)(4143699003)(261022075727099003)(261021123027099003)(261021121427099003)(261102123227099003)(261022105027099003)(261028144727099003)(261026140227099003)(261026121527099003)(261009223027099003)(260925021911599003)(260925021311599003)(260925022911599003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TnZXNDZ0a3B3aWZ5blRxcUdqVStYTmNLSTdDNTZXN2JjLzBGMndVbXVFTkZn?= =?utf-8?B?QytJZTZoaHRINWJhanhhaWxVNXprc0dCa1QvWk90ajYyWm1Ub05tZ01OdTlG?= =?utf-8?B?eGl2MmVsVDJWeWszc2wwSlJJSUNnV2tZc1JCS1ZuTDE0T2trTFhmUVFKVTQv?= =?utf-8?B?RXZBUzBHTDUxNklxcnd6RERLTGhEbmhKbmU2SEZGaUlJY0s5aHFQcCtTMXJB?= =?utf-8?B?VGY2ejBTbGJaQkE1bFo0VDIrWmIybmRsWWh0dWpCZjhEWUpmOFgwU0ovRHpr?= =?utf-8?B?RktuU2JpaTh0eUp2Sk9SaUFDSDVpbkVSSjl0RjZvRDk0eE10eEFRbzFLaXhO?= =?utf-8?B?MG5mZGpSV0Mwc0NiaGVReTB2MWZtdzljQWQzSDNOVEJvWmJtdVFETHNhRUtp?= =?utf-8?B?T29EYjhFbkdoM0ZhU005TmlHSzhmSDdkYVpOWlM4NEwwNG1Ecm5XWFJGMytT?= =?utf-8?B?a0xvd0d3YysxekRLNkFSL0s3ajVjeDBHL1ZTdms4U0ljRjRrRm5RT2pUKzRo?= =?utf-8?B?QjJBV0VVQ1dvM0kweVB2WkdrOWxpZlgzRU1VU2hlZzJRNTI0RTAyNzIzajJL?= =?utf-8?B?TnVHcVRWRmRwRlJCQUN3M0tIRGRzYjE5NTdaOEFMUklGQ0NFcHdhYzNCTzl6?= =?utf-8?B?aHBkY0I2Zk8vZzhhTkVFOFFZWXY4Rkc4VmE5b2xwOXVzakpHVEFabHV5ZW1E?= =?utf-8?B?VTZIbXlucWRlZ3NLRXRoVnFSWTAxSXErRXQ4VFZnR0xIS1RnWWRrNlFESUlx?= =?utf-8?B?ZXppQXJJd3hNRm9WZ0w2MnhCYk9PSXM3UkFpeEg2bkoza2VuK2pUdVBCKzlR?= =?utf-8?B?TzR0dklUMEhvTFBwTXJCK1FlNFN1MXFEeEJockZKaTBUSUFoOU1lTkhyc29R?= =?utf-8?B?MGNlaVlZY21XMVVPaWJ4aUx2cGg3MDloWlk3dThoSEtlbFR3d1VQRUNQYWdS?= =?utf-8?B?OW83dHRIRzJrZ1NjZ013RC9tUXhUSy9Cc0lFMnFOODk2U1N6MnVoVjB3ZFBO?= =?utf-8?B?K1RKb1h3U1ZibWVMR0pkNndJTTF5d1lCZVZFd3lORjl4aTE2OXhZK2xjZE1P?= =?utf-8?B?N2FpeXVsTW5rR3plVHd5V1NNV1pmRjUrWTdoRDFVa2IveSsvRk5QK1k2QzFa?= =?utf-8?B?WDFCcFJqZUFzY0ZEZXYrOHRJaU95U1VMbjJLcmlQWU9PRDVPaDBYc0txRHF2?= =?utf-8?B?a0ZWbHErTHdMRWJzY0V4TjhES1Jjc0hGRmFMNWdUTVhJUjVuVlUxMmxvZ3RD?= =?utf-8?B?eE5LQVAxcTlZem1FbEFCRDRZWWs3YjhLaXNCeWE5TTc2VW9iUG1CL0w2UzEz?= =?utf-8?B?WENITGZMRlI3emdsU0NZSEpNKzRmSTRTQjZKOU9sMFhYL1QyZnlVdTltY2pC?= =?utf-8?B?MmxJVDJQRHlYS3BhRGl4M1Y5cXNZeFMybFJpMUZWdndPUlRoZGNEdnVDejNU?= =?utf-8?B?L3BlZVE1bkRpSi83dFBmZi9VUUVkN1M2Q3NMT21qcURsQTlxMVFMdk8xdVFC?= =?utf-8?B?WWs4Z1l3V0tnWTlOUnBNMk9xK0crMTVPOSs0QnZxZ2x4WkYvWVUxUkd3UVZE?= =?utf-8?B?Sk9Td0ZvVFRHRHQvZXRTNUhONjZjYVJYOXlHMXhxZGtGRWxkcWJ2TG4zdktT?= =?utf-8?B?bitMNEs1bmltQVhxZ2VsTGtoVjY1ODRrY0dzU1V4aG1NOUtSNjJYaVhhSU1S?= =?utf-8?B?NXArWjgxajR0Szc1Z0RqdEIwQUxKbE1zcXBFOURiemllNHgweTVEMVJIWGZI?= =?utf-8?B?SFFjKy9vY3VZQkdxeDZ2c0pib0txWDlNSGU2QXk1SXFITGhDREdjRTJmVXFa?= =?utf-8?B?QjlRQmRjaEwwNzBrZ0QzWEFsTWhrQ3gzSjZwQmd0NFFxbHA3bDhhMnZVSEdK?= =?utf-8?B?eXlmODNwTjZXTjVKVVNpenZSbzQ1eHhRUWJVRmtod1RHUFFKRXdBYWJtYU1T?= =?utf-8?B?S2QvcVFNVlVzN3hzY2UySitpSGRhM01yc2htaDBmUndXVEtORHBoL2VGUjZl?= =?utf-8?B?S1hsUHNmNVhiR3pXeWdFT3NPTW45aWdXMjVGNUtyeGtQeXRwanVwemwrQjJE?= =?utf-8?B?Qk45T1dVUklyaEhTczJwYnBDMHdLUTJLZjExWGxqYVVBVmltbjlJM0RQQ2RR?= =?utf-8?B?aStsMEUxMVFCT3Q3ODBmcSt2ek9GTHd4amYzb1NiWDNRalFQUTZINDlZTUgy?= =?utf-8?B?bUxJTjIwckM4SWRzZnNLczdNa1JlZDRvUTZYMjY2QjlpNHoydllrMTdycUZN?= =?utf-8?B?a1QzeitWVEJ6VUpRUkU3TmFwUTUyd0o5RnFiZDIveTJLSVlPVml1bkhHMlhr?= =?utf-8?B?Zm9UVUE2SzlYSFZTSkIzNUZqZ3YwZVplSTFaUzBYeXR1ZDlhOHRVbXBkdHhl?= =?utf-8?Q?5ZFuagT2OAwHNriE=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b691a1c-a430-43d0-89c9-08df39a762d5 X-MS-Exchange-CrossTenant-AuthSource: PA4PR08MB6061.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Nov 2026 12:38:39.1913 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: V8CC9rmx+fuiV/NDxHSBjulJ2jW9yA7QaCPgIDm0E7KGM3HTrHD9O8YtERUIHDxYkeV7lQmvhxaNbM3pkyw+4Q2xHL2oMGCbRY34IAFLFts= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7428 X-OZ-Fwd: true Cc: devel@openvz.org Subject: Re: [Devel] [PATCH hci-8.1 v4 6/6] drivers/md/push_backup: add event file descriptor interface 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-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: devel-bounces@openvz.org Errors-To: devel-bounces@openvz.org On 11/3/26 11:11, Konstantin Khorenko wrote: > On 11/3/26 11:03, Andrey Zhadchenko wrote: >> The legacy messages keep working unchanged for compatibility but we will >> clean it up later. > > Hi Andrey, > > I found no locking or lifetime bug here: the kref, pb->destroyed and > the reserve -> emit -> check -> install order in push_backup_get_fd() > hold up. A few things to settle before the UAPI is fixed. > > The legacy path does change, for the better: pb_message() parsed u64 > and passed it on as unsigned int, so "push_backup_write 4294967296:1" > acked cluster 0 and now gets -E2BIG, and push_backup_read printed "%u" > on devices with 2^32 or more clusters. Please say so instead of > "unchanged", or move these into a separate fix of 62e07487348e. > >> Also destroy pbio object first before requeuing in resubmit_pbios(): >> in-flight requests hold the target which we may have already stopped, >> so dm_requeue_original_rq() may trigger .dtr and invalidate mempool. > > The requests pin the mapped device (dm_start_request() -> dm_get()), > not the target. Only the fd write path needs this, as it holds no md > reference. This could also be a small preparatory patch. > >> + ret = -ESTALE; >> + if (!pb->map || !pb->alive) > > The fd is bound to the target, not to a backup session. After > "push_backup_stop" and a new "push_backup_start" an old fd keeps > working on the new session. A reader blocked across the stop can even > miss -ESTALE: if start has set alive again before it re-checks > pb_has_event(), it sleeps on. A leftover tool then acks ranges of the > new backup, every ack clears map bits, and the new backup silently > loses its point-in-time consistency. The legacy messages behave the > same, so it is not a regression, but a new UAPI cannot be tightened > later. Could the file record a session generation, bumped on start and > stop, and return -ESTALE once it is over? If you keep it as is, please > say in the header that the fd survives stop/start. Hypothetical situation that has little to do with kernel code in my opinion. Surprisingly the userspace code must also be competent to not blow itself. I do not believe this justifies extra complexity in handling this fds. > >> +static const struct file_operations pb_fops = { >> + .owner = THIS_MODULE, >> + .read = pb_fd_read, >> + .write = pb_fd_write, >> + .release = pb_fd_release, >> +}; > > read() honours O_NONBLOCK, but without .poll the fd cannot go into > epoll and poll() reports it always ready. pb->waitq and pb_has_event() > are already there, so .poll is a few lines. It is the few lines no one will use. We have a separate threads and this is better already: poll adds one more sycall; polling different disks in one consumer increases latency for everyone. > > On the header: userspace gets -1 and errno, not "-EAGAIN"; read() can > also fail with EBADMSG, EFAULT and EINTR; the fd is O_CLOEXEC. The fd > is installed before dm-ioctl copies the result out, so a failed > copy-out leaves it behind, and "dmsetup message ... push_backup_get_fd" > is of no use. One line on each would help tool authors. > > After pb_destroy() the struct may live on through an fd with ti, > origin_dev, wq, pending_htable and pbio_pool dangling. Every fd path > checks pb->destroyed first, so this is fine today; NULLing them would > keep it so. > >> while ((pbio = list_first_entry_or_null(list, struct pb_bio, list)) != NULL) { >> + struct request *rq = pbio->rq; >> list_del_init(&pbio->list); > > checkpatch wants a blank line after the declaration. > > Commit message: "This way we will avoid aforementioned problems." can > go. Please also mention the target version bump to 1.1.0. Is that what > the tool checks to find the fd interface, or does it just try > "push_backup_get_fd" and fall back on -ENOTSUPP? > _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel