From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11022139.outbound.protection.outlook.com [52.101.66.139]) by lore.virtuozzo.com (Postfix) with ESMTPS id 72A5181060 for ; Fri, 30 Oct 2026 14:45:43 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=YHTHsBkUw8JA83tAriGsgzdLNJgDTNqrXD58wQe5c1gu0L/V2VoSkXczu1ydObK2SjWfZm0zwEBvoWIuEuZsxAukMPbUJcGBEYy5xBl8nsJqyIVlmRQUs/qbx4Eb9dnr1KRixDAPBxiM4YW9bqGglKl4cE0HsYvs/byiJXL+8A11hTWV+AYqOdSFFdqMYnGd7ogdxFMS+j5zWGqmD3dEz9tzPw1iMyR8OXYjBPgLBa22IDkf4yUh8GUDzasH6cvlUqPLtuImSEFR0a7SBT+0DZ5kOIq2v90rwGQNdxFPPEb1eNjopkbbOR027mSJaRS097YRSzxRmJbFsYjVB2qyIA== 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=aaqxGvIAV9nWyIUOKLD+rjloujxACkxQXqCBHcsol6pVehbnbDN2E1Rurb5AOoeeSBC00F1CRtJlxaAYKwK+Q14fLah/lZ23WPPewWCVgi4E8wzFLvnC5Tr5nd5o6a21Q/JNdvVvCzhmVVL2y0vNUBcRBDQ0AzJcOV4QCU6/tsrhTtbxFgBWCeveYfi0cCWcsSDqsXz5RezGfKJOEl10RJ3/1CgRxCToaJFBLT2J6hwm58FbsTFoA3H9SYsDqmLbwrPooqKhwghZhJDSovIiezNN8wxT+tvTYUA69tOgORyPslb9qjtQL9o28N7wFSUPBD90/rkwCRIWVvPXi+MP4w== 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=Iz0eB7HQZpU/BUUKL5de53/PXnZ7vwecGuBpSNVgheJw9MEaEMVgs3KGGvhswbA8cC5BXcboOoj1G+aqOFMEGwNvKjfkHeWWeFojWfUCuzP4a/R41PE3OluqVUZkHLUcJyNEW71dbAxl1c/6w+6PF0P50HAqV4njEpoeLHBIQy+oXVgtP4V6wUm4WKVovuwevazqjHM8D7nRqgYcn2Icx+TcKsFOPyct2zyZTiLG5jgsJCmHQAg3UuNjPjeZJkX46uPCk1c0Eh+Cm75RggIWwcX6+lcj2t/TCH1YkUyzYozib+ZPPmglUZKpCRO4Eupu0SXICLN6S8maytPV3fj0Fg== 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 AS1PR08MB7451.eurprd08.prod.outlook.com (2603:10a6:20b:4dd::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.569.9; Fri, 30 Oct 2026 14:45:41 +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.0569.008; Fri, 30 Oct 2026 14:45:41 +0000 From: Andrey Drobyshev Date: Fri, 30 Oct 2026 16:45:34 +0200 Subject: [PATCH QEMU HCI-8.1 v6 03/34] vfio/region: create BAR dma-bufs with O_CLOEXEC Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20261030-vfio_v1-v6-3-45de246bc92e@virtuozzo.com> References: <20261030-vfio_v1-v6-0-45de246bc92e@virtuozzo.com> In-Reply-To: <20261030-vfio_v1-v6-0-45de246bc92e@virtuozzo.com> To: svt-core@virtuozzo.com Cc: andrey.drobyshev@virtuozzo.com X-Mailer: b4 0.16.0 X-ClientProxiedBy: VI1PR0502CA0031.eurprd05.prod.outlook.com (2603:10a6:803:1::44) To VI0PR08MB10656.eurprd08.prod.outlook.com (2603:10a6:800:20a::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VI0PR08MB10656:EE_|AS1PR08MB7451:EE_ X-MS-Office365-Filtering-Correlation-Id: be9e404d-f68a-49d1-331e-08df36947888 X-LD-Processed: 0bc7f26d-0264-416e-a6fc-8352af79c58f,ExtAddr List-Id: svt-core@virtuozzo.com X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|52116014|376014|23010399003|1800799024|5113699003|22082099003|18002099003|38350700014|56012099006|10067099003|261021123027099003|261021121427099003|261009223027099003; X-Microsoft-Antispam-Message-Info: PtDs1EkeNtuKTDIlYF2Pz6eqOnd1bAIwV2w+MBWhL5QIZFCFZAZlu/KORWzRDsdCemHEb9xLuUq0kk0wgXzv2373PJsAbp4G5nCeEa2M+cvMdhoVip6I6Agx5wOKmefe41ATAx7yZbNsI9FR2ogG5d4hf5PMPjetZ769ZXLOpRfBQVHL9r8dN5QYFv7vK6rlUfxWU65Ty6j6N8Htw98LeMpvUxnLvL13fdXsVRu+S+EsH0w3M3jrq0Ci1OG7vZzbHJJC21utEKIRuK4f7JvmlO7J2Dl5pN5muDCa5Zh0opQVnZxubH4+V9JRWQI+0dNtpV/CMxV+HMxizpRtcNWrP8odfI5w51DwCbrXq1OEthRgXUSBEDypPqnrWJIluMgUtBAI6ebvQF3C+BgRPHVLJKE93fNFvhBz9CmXfvk1BluT9o1sUbIvS8OSq4MBc2EsqINXGtBZDMjeF7ioXtHDWSklpAwv7impfZzlguuAGO4uGkm2PU6DjsVLkRsBdQJujpJVN3KRFd25Wco2ri5+7VUda68x8EKDhDbyBnI5qrJfltLIi6V1uFQAlsOlNvg5sfYD5/HliUMMxW8+kuezni+5pIdJ3P5yA8ZCrJdTGgj+sBzQph2Ll1ni2DPigLuusMNWqWu1ZRx+T+RPl7Dhidz1oJKOrosiD6HWv1VE/Jd0tg32xcL7YA6yc30Z2kHdyGiQ3qt6SnCGQE4TmFUKlq90fWddqqVSUkSOwBp3r6c= 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)(366016)(52116014)(376014)(23010399003)(1800799024)(5113699003)(22082099003)(18002099003)(38350700014)(56012099006)(10067099003)(261021123027099003)(261021121427099003)(261009223027099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UzdhLzU5bHZYdXpobXEwS3poQnpSaDhmekp3Vnlmc3o4MmdvajdPNUI3S1A4?= =?utf-8?B?ckk5QzJyZTlOOGZSQkYrY2kzVjhJeTIrcERBa21DNWVyVzFaakxyUk8wL3RQ?= =?utf-8?B?UVF2d3RrQVJRcnlRdEhmZUhlTjJ5YVdCTEF2YkxJamJQU1dhOEdTRzBpS1Rr?= =?utf-8?B?R1lqbklCUnp3YTNqenJrN2RoL3NxWStCUTdYOFZoNTlFWGhXaTBURGJoTnhY?= =?utf-8?B?TXhFQlVTaHZqSmxweVYvcE9qMVgzQjIwRk1Eb2NKZWo1Vlg1ckVLN01ic2Nn?= =?utf-8?B?eXJ2am1RbFp6N3huODltOHJTS3Y1aTZaRzhMaXBWT2tOV0tQVU5MVFJtWDh5?= =?utf-8?B?dWJZbFFDZ3Z0MjJKOVdSbzRRaVM0Nm13RVY3UHQ0YjVyekNBZEtGaW1ESUdM?= =?utf-8?B?SExQbXJrUGJLdUhzeHUyM3FDYlZDeVEyemlzRWdwQWpic1hnZTVQR2VOaFlV?= =?utf-8?B?L2N5ZExoTFBWWXBUNzk3Y3QwQ3NEcnlDdTBMM3owYTlIbHJadEdUbndjZ2xU?= =?utf-8?B?V0ZyMVNkK0xoMU1hMW9PcWl2ZzRCTUV0Z054L09HYTZWT2l2UFFZa2EzL2U5?= =?utf-8?B?NGVWL092MDFXZ21EL1I5ZzF3SDdkcW9DOXBCRjc2L0JVYlIvOUNkOWJsZ0d6?= =?utf-8?B?MkRLdjJnYlgvUVpQMUtFTnhSVW1hcHhTSUNPTWVCK0t4dDRqT1BBQ3k5cG1z?= =?utf-8?B?QUptcVVFU3FQeExZRVU1a2dMVHpHbFZyMGV5OU9nY0ZML0F0M2M5WVM2WFVI?= =?utf-8?B?ZTJLVFI4NjBSQUZXR0JTektPYWE3RzMyWHprQk9vR1IxWGVrc0tLZVFjVU1B?= =?utf-8?B?endSeEMyY0lLOVgwOC9RYzhidmREc1l5SG9vWk5zaHRrc1VIdHhVNk5pWEpC?= =?utf-8?B?ZWtGUlBONUdxc2lUL1NIRG1WZ1NTZXFvdTc0Y0FpWUtBTklCMWgxT0hwM3RP?= =?utf-8?B?R3hWWmVZcmUyZGs5ZmJpOGplaUI2blZkUXBuODNlYk9meVl0Z2pyckp2STFz?= =?utf-8?B?L3liSDhmQnRMaHd6aS90Ymp2dXpzZ0hmZmMxKytSZ0d3c004K2c3eXRFb050?= =?utf-8?B?clYyZm93czU2YzNyYk1ndHVYQmRnbkNkOFkvOEVEdk5oTmw3MEJHRndIQ252?= =?utf-8?B?QjhJcjRDSndDQWp6VmJhT2c0UzJQVHZpOTRubHcvdm01RFlEZ3BKYUpjdEkv?= =?utf-8?B?dTZjYWtRbTRjTjQ5ZGRYSTA0REx1MkdCN1p4SW5UUlZmNmtvaDd2MW95b0ZG?= =?utf-8?B?K1RyVHBkalBhaHdLRk1Ob1oyeXNzMUR3WUFLSzVuanhwazBHYkhEQXVqSjRQ?= =?utf-8?B?eU1JMWJ6cElyRXoxN3QyTlRTRHFYUkZOenJKWFRJdUl4TlgyTTdHQWNVbWU0?= =?utf-8?B?ZTVybVVwZThtODlpeU43c2RtSUxVZUFpZkFQc0lmU2xQb29RSENNcEljVjJa?= =?utf-8?B?YWdOOUVUOXVVcjJ2ZTlvM1FTRDJwSERjZTVuWDVtS3V0aFJHS293Tmhia01Q?= =?utf-8?B?NHJiT3FKR3A1M01TRGE1M1JubDBDSU16bno2bWxRZWhkRUlZcUJLcFdRWm43?= =?utf-8?B?UEFhaVVtdktuUjNUTXdmc1AvZ1ZSQXVGYzV3eHZ0eVIyZGxSaXcxWExZTVJp?= =?utf-8?B?MmVhNFpKRTIxU2JDbFh3Tm5mV1JWQzBkTXFuQnlKQVkxN3NkZVpkK1BPL0h1?= =?utf-8?B?dXQrTUxJQ0szUFY5TXR3Ri91amVkVXdVb1NjQzVhREJXSFIyRnlwMmUzK05j?= =?utf-8?B?VmZLTzNHVy9WTWNuaVRSZzJiZWdvUk5Cb1hJbllQQmFBTGFidmhxWG5FcW41?= =?utf-8?B?VHBpR1V2cFR1N2Fkc3lxNWpHV1UwMXlYOEIwT3hBaERYWGl3VFBuS3BmbmVK?= =?utf-8?B?M1VFWndpMlNaNHNmQlBnZGg5UUJ1ZHZmc2pYd2FRKzlYeEJHRW82NjhiM1RP?= =?utf-8?B?cXlxMXF2STJEdDIxUWk1bHZNS0d1cVBuMkM1dG91bjZITXBmUmVZUEp2QTZR?= =?utf-8?B?eGJQelRRaGVwZTVKNERxZnJ5bnU2VkorR1JyNnlTVXJzNTFOU0E1YVdCbHBx?= =?utf-8?B?Tk85eGZFb3dQcjQrR05mRTllUkxVWUpkeDJHYWI4Q2JjNzJqZzdyVFQ0UHlS?= =?utf-8?B?Q0UvdTJPV2ljN3RqR1Baa015VGgzMU9zcWpJcG00cnVHUktmSjM4K25vTUUy?= =?utf-8?B?L0JtR0ZrREs5MXNXQysxQTdCL05xNnVpa1JkdU9pa0E4eGxXemJCZXY2bXBl?= =?utf-8?B?YnIvN2I5TFR2bVhhZUJ4OEJTaW9UZ1ZNMGw3WTM3K2cxYkJsM0NGTFRGVGpv?= =?utf-8?B?WEx5OXpaSy9Pc3ZIUHVOUytSUHQ5QThVTFNtZ2JnYjFQbTlTRmFXU3Y1UjZZ?= =?utf-8?Q?ftwiJs0csSiVVg00=3D?= X-Auto-Response-Suppress: DR, OOF, AutoReply X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: be9e404d-f68a-49d1-331e-08df36947888 X-MS-Exchange-CrossTenant-AuthSource: VI0PR08MB10656.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Oct 2026 14:45:41.6528 (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: CTEdTkwZf700nvOWKX/ZQ4NvEznVgAdLojQXdTWMunnpXvirogECVom9k5uexKrf6qXrlW4BqNdeHePkKL+HA4qxW+ITrk9Rl+K8dLWF+oA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7451 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