From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11023101.outbound.protection.outlook.com [40.107.162.101]) by lore.virtuozzo.com (Postfix) with ESMTPS id B6D9C8017D for ; Wed, 28 Oct 2026 12:33:42 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=lruM3+YTuD77VWYW0XiTQUxIBBDtf4iY82SpazZIy/c4mM5pkWHJXV/NaxuLVqGvSf3GVIMjvIZoUFbHcYKlho14KTUJqdqUKIaptj2gwWeIRjap0ByPeCz42bocniaZN8f559sHatnK0FjylvT8fwtE8a7CnTjGed59tTcm1Oaagr0vYm/EVKZ5reEvwcoVNIa9iIsckPtB4FI2HnWbafLdRV0MQbzFNM+1tDGudLjr55t9rwEZKkNwcKRWBRWLplLpCQq33AGi1ta2sRS3XjP65+xr0k1LKwaMLzfJR8rX5iP0PbwDy/qvn0ER/acT0WxdVncP4dZjQEuq//gdwg== 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=cHir9xGwl1Yx5BBEafbwAKNheTvzECwr/+8YhLCDTdQ=; b=IFhjPxhFCZJUx/bGgkR7va26bOYyupKIcEC0ZVmado2J+8VsfrJRuipnqqoFU06l4zvtn8w21ekCkb0xzsxtE3FntwZtri8H0W/FmGS81HJnbzqLFc/1m5ziFdrTTjGTZK1eHu1wxVos4lPAo1PG/b5G2hL0Dq0/BagfLYDvgdPE1+0ASUKSQFrxIfAN1Q9BMTxSFYRVHeGn/g8wQO/MCCk+zeS0Ae+HmkjR+dYwbwxdvnJrX91DrtXwjpDjs47kEO4ePHbF3yx4OyQuD8uF4NCjxkA8QHq2gj8Rwvv23CyI9hWHXyal1LqgxTZjIIAMdKr8bmG+i50M4nULZNwqUg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 130.117.225.111) smtp.rcpttodomain=virtuozzo.com smtp.mailfrom=virtuozzo.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=virtuozzo.com; dkim=pass (signature was verified) header.d=virtuozzo.com; arc=none (0) 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=cHir9xGwl1Yx5BBEafbwAKNheTvzECwr/+8YhLCDTdQ=; b=LCeaRgii/aEk5RNo/XtidIXNFQTQx05Lfa9MCuHMd+NLGw4ErAlle/zufk/ZAe3cH2MxDEbwcMP0cDtACCE8F3owNLuLYCsfV1olhS6k+9kuWNHn6GPcxYibqfc6DjHrX+B4SIcaXEG+VC+R+67f/jteDNTBP2ZnKmgInxbSFBB0WhMWuNZBwx/T1rx0WyO/6C0B4OgksilYw6kY7qp/JDblgWUr54wLL8e3+/4gL+WzXnCkGhNd1yhYxHFJpJWarCB6Ifxm2HjFqXbYnZ7YeG+pu75glolRf0SK87NuVbBNTcOBIyS57TeAl/Jb+8DJPeRu2i6afAvPHFXV2Yhz2A== Received: from AS4P251CA0027.EURP251.PROD.OUTLOOK.COM (2603:10a6:20b:5d3::13) by VI0PR08MB10681.eurprd08.prod.outlook.com (2603:10a6:800:204::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.546.19; Wed, 28 Oct 2026 12:33:38 +0000 Received: from AMS1EPF0000009D.eurprd02.prod.outlook.com (2603:10a6:20b:5d3:cafe::9e) by AS4P251CA0027.outlook.office365.com (2603:10a6:20b:5d3::13) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.546.22 via Frontend Transport; Wed, 28 Oct 2026 12:33:38 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 130.117.225.111) smtp.mailfrom=virtuozzo.com; dkim=pass (signature was verified) header.d=virtuozzo.com;dmarc=pass action=none header.from=virtuozzo.com; Received-SPF: Pass (protection.outlook.com: domain of virtuozzo.com designates 130.117.225.111 as permitted sender) receiver=protection.outlook.com; client-ip=130.117.225.111; helo=relay.virtuozzo.com; pr=C Received: from relay.virtuozzo.com (130.117.225.111) by AMS1EPF0000009D.mail.protection.outlook.com (10.167.242.74) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.569.4 via Frontend Transport; Wed, 28 Oct 2026 12:33:36 +0000 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=cHir9xGwl1Yx5BBEafbwAKNheTvzECwr/+8YhLCDTdQ=; b=wWXzkdqtazfG SeiixF7awFakG/fVdOxDSIQNo1hGkwZuRFYalyFkM5UYxO1EU7jP1gqnC98mJKQoVMtpLJBErqgjl lw1LQjEs08Ri7+/5szJN5Va3XAJOGlpfdCQdAqfODB+RWNywVNWYsSXFK8FtUX2xFZ/jks/tmbyWv k5Wtl0/Wpj8Ny+WqNlKhmNT/TB0tdphGQn06tkT6E/BwxFOH55BifFq9OL3tUVApMvU2t/8X3eflI py6nBL4f2KrdKfdYNTLSqFi1opYHDAICTyZ90DQejZEwBdl2UhcEcgxuK/Ard0S/h4qZvv4wgHVsb yb+iMN7XNikPJF/FsJwedw==; 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 1xM2mk-007Thg-1V; Wed, 28 Oct 2026 13:33:36 +0100 From: Alexander Ivanov To: andrey.zhadchenko@virtuozzo.com Cc: andrey.drobyshev@virtuozzo.com, svt-core@virtuozzo.com Subject: [PATCH hci-8.1 v3 0/4] vhost-blk: switch from VHOST_SET_NWORKERS to the mainstream worker ioctls Date: Wed, 28 Oct 2026 13:33:29 +0100 Message-ID: <20261028123333.3145676-1-alexander.ivanov@virtuozzo.com> X-Mailer: git-send-email 2.53.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AMS1EPF0000009D:EE_|VI0PR08MB10681:EE_ X-MS-Office365-Filtering-Correlation-Id: 2faa58f1-2079-45cf-3a88-08df34efb04b X-LD-Processed: 0bc7f26d-0264-416e-a6fc-8352af79c58f,ExtAddr List-Id: svt-core@virtuozzo.com X-MS-Exchange-Transport-Rules-Loop: 1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700016|82310400026|23010399003|376014|1800799024|5113699003|18002099003|261026140227099003|10067099003|13003099007|56012099006|261022105027099003|261021121427099003|261009223027099003|261009221227099003|261021123027099003; X-Microsoft-Antispam-Message-Info: w3sP59fRqo/OcDwUjTxpZfaoIZni8k3TCQmKRHDENqO3pJB1YFur05MTkhK/WvMOSJU5ecj+sVq7S0nNGvw8z0MDOCQ5Bl9Fk1WJ7ap+x2rRKWOOZDujlSJKY1buHhFtr/FtT9GYEqrrHrVp15bS9mX4o9gvRWRb8C873VivJOLOuDgiMSztN2iiWuhQD/7T62IpqXGVCkvT77ge7LIoZBTsk/Grtxl5kmF5+NPp+eAddQlE0VnJOBMy/JDSOrRR9XA5CPA0YD0fvfBmahUpmxsHMDgPcJliZzpi3m/ud+ULhPCO1D+spQSuNw7YLFpPWJNbL9QVCBxFXovzuBnxLcr0fxFPf6qm+R25dQZFFjaukOe7xhtTx5C2A3aRQtWw4mADcN7SFObiL9bUw+htQ0x6vhedSjhgB4+iWS4CMWKs7ypoTV2M4cesAxNhuEAjwSTh1Ii87EiuPBjRSdLvxsu/HBlRP530AShQ5Codvwo2fv6Z/2MpQ0ZEbBjgCRYtV30pThrgDTPUslKAgIbqDnLOORpK/9esonNeTKW6VWF07d3iqlYLdoeOh0EmmokhycfCK7Tbl2dgoJI7GcNlOq3gZJfJaniwy2JDQD+xU8T7+GvJFVRo4hAsRFit2zvaOA/8B4QcNaY660VI/EUxPDBynDzyPf83v3GB++8AVv8= X-Forefront-Antispam-Report: CIP:130.117.225.111;CTRY:CH;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:relay.virtuozzo.com;PTR:relay.virtuozzo.com;CAT:NONE;SFS:(13230040)(36860700016)(82310400026)(23010399003)(376014)(1800799024)(5113699003)(18002099003)(261026140227099003)(10067099003)(13003099007)(56012099006)(261022105027099003)(261021121427099003)(261009223027099003)(261009221227099003)(261021123027099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: +yhDA07dN6mzZcufUWFD2tFRwTIH/B6oDuoPAuaFAE8kepKLpz8zvZsjZzg/C4RTbdbVXJPye7ptwgMccwlIaNmWAsKZ9LmIWXk+0eXlW0GGMNHjDB+522GTRVnylZ8Ag0QT2nlZXkRl7d1z2ywh/VtZISVvTt0FLUO9Eurm5d83/LO8KE4rhKSVDIWsWCm5kE2UwAoMk060kkFexEgkGbNUh0PmQpRkG2dyoujsS+fT9UC1g6LU8rmbBGla2yQhXwWGeN7Jbht7GXobiKnR7Pn8u6tIv0mJd5N8zGKzCoAttBRkSdjJtBfE/8TuGj+Z3nU4fKlEqrjCNTRSlKP6B18xsuZLBWJ4yMWAJdZTAsQjs0cakQ8x4EvfiBGj5YOqQNo6/NzsUQi7iT4zoQE93KpkTJalciScBdqzDnrlUz6ZZeTkZ1rFVBEXHaVTCHDN X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Oct 2026 12:33:36.9391 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2faa58f1-2079-45cf-3a88-08df34efb04b X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=0bc7f26d-0264-416e-a6fc-8352af79c58f;Ip=[130.117.225.111];Helo=[relay.virtuozzo.com] X-MS-Exchange-CrossTenant-AuthSource: AMS1EPF0000009D.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI0PR08MB10681 The kernel drops our VHOST_SET_NWORKERS ioctl in favour of the mainstream VHOST_NEW_WORKER/VHOST_ATTACH_VRING_WORKER, which vhost-blk now supports. Patch 1 wraps VHOST_SET_FORK_FROM_OWNER in a vhost backend op. Patch 2 refuses num-queues above VHOST_BLK_MAX_QUEUES at realize. Patch 3 makes vhost-blk create its num-threads workers with the mainstream ioctls, keeping the same worker layout, and fall back to a single thread on a kernel without them. Patch 4 drops VHOST_SET_NWORKERS from linux-headers. v3: - new patch 1: call VHOST_SET_FORK_FROM_OWNER, VHOST_NEW_WORKER and VHOST_ATTACH_VRING_WORKER through vhost_ops instead of raw ioctls - new patch 2: refuse num-queues above VHOST_BLK_MAX_QUEUES at realize instead of clamping num-threads in patch 3 - patch 3: create each worker right before attaching its first vq v2: - patch 1: clamp num-threads to VHOST_BLK_MAX_QUEUES - patch 1: note in the commit message that our kernel, unlike mainline, defaults to kthreads https://virtuozzo.atlassian.net/browse/VSTOR-107537 Alexander Ivanov (4): vhost-backend: add vhost_set_fork_from_owner op vhost-blk: reject num-queues above VHOST_BLK_MAX_QUEUES vhost-blk: create kernel threads with the mainstream worker ioctls linux-headers: drop VHOST_SET_NWORKERS hw/block/vhost-blk.c | 105 +++++++++++++++++++++++++----- hw/virtio/vhost-backend.c | 7 ++ include/hw/virtio/vhost-backend.h | 3 + linux-headers/linux/vhost.h | 9 --- 4 files changed, 99 insertions(+), 25 deletions(-) -- 2.53.0