From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from AM0PR02CU008.outbound.protection.outlook.com (mail-westeuropeazon11023092.outbound.protection.outlook.com [52.101.72.92]) by lore.virtuozzo.com (Postfix) with ESMTPS id 41EE380B14 for ; Fri, 16 Oct 2026 15:26:11 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=QtMi6AWYTI1pHmuwFfBY2q+tJB2Efl4thF6FNt9GbxeqKGgJSwmE08ad7Uelxa35pHdwzRpOar/v+fsNtBdmhltCB0nNdPQbAjpuUH4LdbC/VnN6MaBmZqrV7pfmkLp4W/+znmvX77GHWHHuhafMGGsYdsaxmsrgGs+Ytn1lOmCRTxCyxLoaNcPIg8GJgs2UWPf6k/kEkNyS2orlO8gWieDg9lnu0kyi9W3c/Xisri1NTmKR71M+MchtnaB4w3BeSbXM+h440XwdaqCwjOg4/Fl/iM4Bmlqk9fDmWENJCxALVgnJe4VvrHSPkxQWV53EXmqtADkKeP5jp8h6WaFsVg== 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=PDGLMIXGNIPqV9guanyCgDYEJ0jcxC6L5Y9yQ72o2Vo=; b=oj3L+zD0voTAO5+U+jAbq2w7VTXfAybUlIVLRfXxZ1HSFdyzhDWDf8sY11jGR1Y+DA33fpexfCJTPEX8lDJqkKUS/PoTRSG+2O7Bg2iq5MBouL0uAhj626Z4KQD8n0NtNZe5Yspm4LIsXH+/WTITJ/GqZH7/lEFm5pKMG1rCU9jp1KzttCLf1kHqg9ZWhV3zEAkqFCLnkzuS/DOX3RiVXMAiImeqYoL+aa/MAHmggy9/s6/qvEAHaHdwnmv/sucMm+EYpGbpHnp+fAQd8/bSUPV5D90Twoxu56PPHx6Y6yTAVbR3OSDhz5fhFVFAFvXpCHuoIJcZhrgz+mfErBdqXg== 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=PDGLMIXGNIPqV9guanyCgDYEJ0jcxC6L5Y9yQ72o2Vo=; b=WZwV3w2TV6xqiw3nZlxOzphiMMpdB4E0PvjHEinK3z413QzIBaN+y2Pse0Jc8+zE+kh/zGf0aDGhw8CPRUtfZ2UuvPmnVIlYFlT2Yncgssa9tr2F+LUPBUiiPx7b5pxqTu1XdbCwEI/LsMurYT7S3vIb8+MY9m6PMagZkBxShuYSEvmu3DOpIpSUOK9jumW9PJnhcgNbedCSuJhe1Bw4E2mGZan3/UqpK6rjQTnrAwnGLaaviGvAe5VltS5Gw/GYnaHC+GxVmzxJsSfjcApZcDhzl+5xhHVEP5LRXV3xWdEAVbMyFR7HZ58K768bKpXEnhdi+Fxi8Lcp6Fw8hudN+A== Authentication-Results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; Received: from VI0PR08MB10656.eurprd08.prod.outlook.com (2603:10a6:800:20a::12) by DU0PR08MB8907.eurprd08.prod.outlook.com (2603:10a6:10:47f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.546.9; Fri, 16 Oct 2026 15:26:09 +0000 Received: from VI0PR08MB10656.eurprd08.prod.outlook.com ([fe80::4e37:b189:ddcd:3dd8]) by VI0PR08MB10656.eurprd08.prod.outlook.com ([fe80::4e37:b189:ddcd:3dd8%7]) with mapi id 15.21.0546.006; Fri, 16 Oct 2026 15:26:09 +0000 From: Andrey Drobyshev Date: Fri, 16 Oct 2026 18:26:01 +0300 Subject: [PATCH QEMU HCI-8.1 v3 03/28] vfio/region: create BAR dma-bufs with O_CLOEXEC Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20261016-vfio_v1-v3-3-47487cb5a8e5@virtuozzo.com> References: <20261016-vfio_v1-v3-0-47487cb5a8e5@virtuozzo.com> In-Reply-To: <20261016-vfio_v1-v3-0-47487cb5a8e5@virtuozzo.com> To: svt-core@virtuozzo.com Cc: andrey.drobyshev@virtuozzo.com X-Mailer: b4 0.16.0 X-ClientProxiedBy: VI1PR10CA0088.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:803:28::17) To VI0PR08MB10656.eurprd08.prod.outlook.com (2603:10a6:800:20a::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VI0PR08MB10656:EE_|DU0PR08MB8907:EE_ X-MS-Office365-Filtering-Correlation-Id: 0b383b02-8cf9-4c6c-5079-08df2b99cc55 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|23010399003|52116014|1800799024|366016|376014|5113699003|18002099003|22082099003|10067099003|261009223027099003|56012099006|38350700014; X-Microsoft-Antispam-Message-Info: lJTV/G/5GitmXkD7kBE4HHbj1d0lBf2OhiXRjs9xXqAXbn61rBHyxjOtZWeRqljMLMppiDbUQ0CYOcMkzmxTJNQf8atYi5PcRpGLcGVbfukqguFzrU1Y0JYYHNm9UOglTlilC4LxUqro5K+H3qHpCixH8qkcERBj006S91IoabtQulvQV5xXeyyZvek4YbUEqZCIeBNUq/oE1aR5E1BhCf9a/p7toOKuYrfKYckNtiQscWZoURuMwN3tjib1sEnxDbKtUHW46BOje4op1J1CMk5z/NK5HZ7ZO0JBTmJyctSAn9pt+mtx9jJywj9NkzvoItdTupuneGVm3lNQqlzXkrN0qbBr1DGB3AIie9iGBtf+9HQL6zCqgJHQOvwyRX2l171xnDyGf4wgrCQhcnNg8AtBoPS66CKhrJw3EyTDt83BF15H5EL8kd++AYIDAZVcaEyf9TJ8YECQgHB1vuZHe70G+oqUzyzII8WFOIUpzXi6/sXA9t8H2BnqOmxibQRtD/MnkVDYJs0WdyAwAN+5TFJ+LcJU/xDn9vrX9mx7KbFAggHnIqUi/9lycVZCm5Sk/sdjOvhypvBAOhNKP1m8W4ZhvcF0VBzPJ8R52wOLu4bI0c9jyjxIpXtAqd/nqYCYI1+JsJkaaFbXq3YTxyUXuxvrso/xCewPyaHaoHKKhJjF/gxPq/CVBR0vFe1iU+xBl027NtQXx8cCESNI7j7hQ777+9ZMicLePdzE4ZXZZjE= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI0PR08MB10656.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(52116014)(1800799024)(366016)(376014)(5113699003)(18002099003)(22082099003)(10067099003)(261009223027099003)(56012099006)(38350700014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dktmTUpMc09kcmg2YlYzbGMyUEVDbXR3RmIwb0xlRTIzUzdwVUI4U2VHYTNY?= =?utf-8?B?Q2VybEJFQzJoV2l3UFVjbGlVU1UyN2lKQ2pTcGF5ZndUR1NqUnFmWkk2ZVRo?= =?utf-8?B?dy9uNDZ3OHk1K0dSWXV2d0Y3SjUySnVUc0tDbzdyM3FpeVIzalVUdzl6bDBR?= =?utf-8?B?clFxNFdMSWVwZG8yNGI3SmJybm1qaWIzdnhQTEkyZlpHQ1h3dml0REZadjFY?= =?utf-8?B?em0rdjd0VWdGa0JPSkVZMm5DSGI2RDF5WHlzN05JM0ZrYk90aytENEU1ZDZx?= =?utf-8?B?Z3FKbDY3ZFYzTk45TVE2cUZPYTh1aWhLeWRBcXk2RFNGcDBWdXNDMngvUjFv?= =?utf-8?B?SDA0U1B2SnFLZ1VCT2NRaUFRMjF1bDNjaENuak5zU2U3UGNkZUV2Wjl2M0RB?= =?utf-8?B?elF2VE9oT2d5VUZVYTROejFsY2ZtMFVRT2E2bGx0MHNHNEpCMFhBc0VTci9H?= =?utf-8?B?WGN6eWRaYm1vS2hockpyak9UY2o2Ym9CQmQ2NUFxOG91ZW9COE9SN29KOWda?= =?utf-8?B?d05uNi9SR0p0d3hJbUZqU0xrU0MvZVY2NHh3MmRBd3VoR01hNFF4WVE1UkpE?= =?utf-8?B?c3RRZFNMVWlmSzBqMlJyTU8rUDBCbU12ZElZMHZaeEEwWUhEMW5Vd2RPemxp?= =?utf-8?B?N2c1T2NDQTZWcEdvdjliSGNXbW5HNVVYNmFuYnJ4UkVxaGM3OENzSFNuQWFU?= =?utf-8?B?VDNMZ1hMZTNOMm1JclFBL2plM1hMSDlvRFhFak8zK2R5SmtGMHNyQjQvSDAy?= =?utf-8?B?QVV0OGtlalB1UVMyMUE1U3MrTWthRGt4UUxxbDdMRG1GaVpja0pGUzJHVit4?= =?utf-8?B?aVRLcERncXQ2OU9yWXpPVjRYbExPRnVPaDlVZVlYczU5K3o0K3RpcndSRUNp?= =?utf-8?B?RldhVzZEdFVmY3luZmNFN3JoVkt4d2dwR0lSeEV0ZXF1Smo5cHNpaVY1c2w1?= =?utf-8?B?TlFqY1NpWmUycldJUHdtUXVkTUhSRWNRTEQvZTlKcUdEMnVDNFFoREVxNzA3?= =?utf-8?B?aW5qVXdmblFXZ1FwdkRwcUFyNVZjMEd2cUo0b3p5RlNVT0NLUEJ4ZUw4bFJT?= =?utf-8?B?MlZHUStmRGI1Nk5JWTZBNmJoS3hSeTBkV3lYYko1SHVaQkRWTk1WUEk4RVlW?= =?utf-8?B?Q2tHTWtMQXFyNFpHZXBvZzFPYmYrNktabXpjVlpzRkNFSWFnemtjSmlKY1R2?= =?utf-8?B?UTVSOU81VEhNSEZZSWgyMXZjOVVFV2ZEclR1YXQ1MnI2aXBJdkxpL1FQVFc5?= =?utf-8?B?cE1ZZUNUcCtMSXVncVc1M0YvM0JjZ0dXVytkVkxVOVFUamY4dmtMeWlybVFK?= =?utf-8?B?QTdVUWlEcVpMa1hta0pOczZHbGRqRFpDYWl2TXh0SG45U0FqNWtzZDNTK1c5?= =?utf-8?B?M0JpcTJNbnU2WDdDTm9OdGFGb2JmaEx4KzVvL1lzcXNtZnZKV2dFUWtKbXda?= =?utf-8?B?cjFUMjYrOW9jZGszdTNhbzJXdWgrRlBXeVFxTVg5SnFpVGlwRDVUZ2pWdFRh?= =?utf-8?B?M3Z2QmNxbCt3R3NUT2ZjVmZRZUZiRTlISzR5S3NOR0JuRzdmV0g5QXJlamM3?= =?utf-8?B?a0ZXUHQyWWhpY1BCMmF4S1RtUjFIN290MmJHbW9FQVhQR3RGWTJCM2JyamU1?= =?utf-8?B?VnBQSG5PbmZsbnNLUitwOVhSaHNycVhmTzM5cEJJcFFYVk1PcEtnbUZqc3NF?= =?utf-8?B?SUhZNml0ZVVoTHVsYUV6UHBHUHl5NzZpb3RJRzFiRm91OTZUMmVScDhiU2ln?= =?utf-8?B?QmozVDllMmNqWUVVeis5cEk5dFJzMTV4V1B3bzZrM0xseWFqWm4yRWVqNVJT?= =?utf-8?B?eEhIVlFWR29pTVZXbXdjUDE1TUJqc2h4QTUrYjd3ZEZLZ0xRMjZzeTF1R3Fm?= =?utf-8?B?a3VNaFZFQ053N3YydW1XcWMxU0lPL05CSHlkVm5jYjI0WjY5QWNBTE5tUTdX?= =?utf-8?B?a0xWSmdUeVhNU2NzajZLWVJlNHBqTm1UaEh5TlhDTTVUc2hjUnRLMTBYbDRu?= =?utf-8?B?ZGY0RkNjdkVKS3NqeEczME5tQnBQZ3VSQ1Frd2FIbXF0TWF0K1V1K3ErUWJM?= =?utf-8?B?N1ROM29kcXdZKy82WFhpTG1WcjJ5Tzh4d0JPS1ZRQVdVN1VINzdZNEMvNzRU?= =?utf-8?B?Zk5uQWkrNTN5aUtOTzk1YXJFL3d6WkRQVWw3REpsd1RINHQzbWcxQ1JDa0cz?= =?utf-8?B?Q3hJWjdMc054LzJnaEllaTNyYkVKbGlYU3h5bCtSbGRPMEFQOTlYQnhSbXRw?= =?utf-8?B?TTJzZkh5dHZIL1c0VnV1V1drMkZLSFFleFE3OVBnOEExU0NaQmdZaHlEQStZ?= =?utf-8?B?M0lMWWc1TzJZL3h1V0tJd0UzM0ZHanRFR2dudUlQTVFGZ3VIaFNMWkhSdUNM?= =?utf-8?Q?AaXFZf9AwZXKPyK8=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0b383b02-8cf9-4c6c-5079-08df2b99cc55 X-MS-Exchange-CrossTenant-AuthSource: VI0PR08MB10656.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Oct 2026 15:26:06.9186 (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: ny2TmJnIE9+WpbG73X3pclFK3ZKD/BmWo8QgB7zJMMG+ihvPz70pjhHfVqcmqeVWf1gDQSxYLtAT7D8PoeTf1gKLIHyJHkUOveufvNDe2AA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU0PR08MB8907 The dma-buf fds are created without O_CLOEXEC, so they leak into any exec'ed program. With cpr-exec, every update leaks one fd per mmapped BAR, as new QEMU creates its own. Fixes: 96163e0dbcb4 ("hw/vfio/region: Create dmabuf for PCI BAR per region") Signed-off-by: Andrey Drobyshev --- hw/vfio/region.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/vfio/region.c b/hw/vfio/region.c index 1deaef12fd0..b0332f27fcd 100644 --- a/hw/vfio/region.c +++ b/hw/vfio/region.c @@ -258,7 +258,7 @@ static bool vfio_region_create_dma_buf(VFIORegion *region, Error **errp) dma_buf = (void *)feature->data; *dma_buf = (struct vfio_device_feature_dma_buf) { .region_index = region->nr, - .open_flags = O_RDWR, + .open_flags = O_RDWR | O_CLOEXEC, .nr_ranges = region->nr_mmaps, }; -- 2.47.1