From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11022092.outbound.protection.outlook.com [52.101.66.92]) by lore.virtuozzo.com (Postfix) with ESMTPS id A3A3D80266 for ; Fri, 4 Sep 2026 15:33:27 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=v9DMGDoHwpJzlLz7Bzbn3Zi3uY7clUO5hAe61buRSb7tzEif7wUk890CiENgVeEtW/ErkJGXmNkSgsOJcUIAG/XU18hTWjCcPyJAWcSnCzX7GH9UOymo7S43+Ughp8Ij+4vK4/7pMSsvShDQzzqelwfeXVL99XotyaesPqQeIARtPHKkJRxGqWurhJ8GAzuBLG0nlDTD/zuvvRndpCepFIAzC+Yag/jA73oCqQjyBGXVeJ96QwGdgDPk2LYjNbf3T7Ro5ZbOvDDtdNcStZDY7XZIb5hnFe2dJTseVyCx+dTQ1/ddfLo1IyboMYlKEwLfydoCx03jZsvYCXnipXhLDg== 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=OwGG8OSKS7ZZfLzSeUF1hh+XxOBeWGEMSg2l4pd+dzU=; b=svs6c7wE8BYI4U4DImKl3BSasEnwAFQ9XoglzfOqH3cRNpz2C6bKgPNtyhbQYDgSuEVdMlX2T9yNvumcATv+DDcLD0k/FbcWpZWil8XvGfA6+UuUJXZ4Pf4KPEYwnxMjunyUyjAv0uVRvH7l9aVz3JK1L28TDPZTwGvHoBCF4gwAMk7J6h1i7KaF5mc3qBSiAve5eCLkSngytCGhxOasCWVKsJvpoMv4BbD6xA2zJGqbDeHpzgHXOgSlXr3Dv92Hyux+frW4t5k5qfyzfU05Nsp1XR9EX6OB3rptQxGxhUKba8RadHIQG7RbBNWg3yQeO+V+ibcJTpC8paGHyOxaGQ== 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=OwGG8OSKS7ZZfLzSeUF1hh+XxOBeWGEMSg2l4pd+dzU=; b=veygZu1cO/VtkCWGYkdHTLoU+PobWv7uA25zwjN4ssPTRbwII6x59aIIPIzFVHEbicfjDc9kcMyP0cRhYlCjFCJHgD7PpahhCf9nqig7ypkEHhiBjr3YetS4mj1Fdd8/9I7tgJLkPdl6PJqB0TYrfANPJkvK+NMA5FgCIPjbZbCVMYf2DdwFBk3tbwynY/xNcy3cvVZ0xm+0rp+HC8qbo8BlRyIqhuXpAYNG+1tDLF5byXZMFVmt3bph+J+wmYsO5XT4KcXBHxTM9Sulk3D2Yf/agkVSfqDA2JLzgg/kPG+YnuglN7tnLeklVlY5vFngwetTiOaGPT2lezSe301snA== Authentication-Results: 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 VE1PR08MB5678.eurprd08.prod.outlook.com (2603:10a6:800:1a0::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.382.10; Fri, 4 Sep 2026 15:33:23 +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.0382.007; Fri, 4 Sep 2026 15:33:23 +0000 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Subject: Re: [QEMU HCI-8.0 PATCH v2 1/5] vhost-blk: do not double close vhostfd From: Andrey Drobyshev To: Andrey Zhadchenko Cc: svt-core@virtuozzo.com, den@openvz.org, andrey.drobyshev@virtuozzo.com In-Reply-To: <20260904132155.180581-2-andrey.zhadchenko@virtuozzo.com> References: <20260904132155.180581-1-andrey.zhadchenko@virtuozzo.com> <20260904132155.180581-2-andrey.zhadchenko@virtuozzo.com> Date: Fri, 04 Sep 2026 18:33:18 +0300 Message-Id: <178853599893.728973.3054483544636922286.b4-review@b4> X-Mailer: b4 0.16.0 X-ClientProxiedBy: VI1PR09CA0127.eurprd09.prod.outlook.com (2603:10a6:803:12c::11) To VI0PR08MB10656.eurprd08.prod.outlook.com (2603:10a6:800:20a::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VI0PR08MB10656:EE_|VE1PR08MB5678:EE_ X-MS-Office365-Filtering-Correlation-Id: e32ece76-f2b6-4454-b1d0-08df0a99dac7 List-Id: svt-core@virtuozzo.com X-LD-Processed: 0bc7f26d-0264-416e-a6fc-8352af79c58f,ExtAddr 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|1800799024|366016|376014|23010399003|52116014|6133799003|5113699003|18002099003|22082099003|5023799004|56012099006|10067099003|4143699003|38350700014; X-Microsoft-Antispam-Message-Info: Bbb5hY6b2iMo6uTCcaR0gapBVDKE4v9ylOX+Y1JnjUnwFKeXceXoC652Iq9HccIV8+jfIz2W1H0t6YE5yUtSZ2PvnFrphuneC8DO8rTLffHq9HarRW4YUnZsCK/IClw21guIewt9J4WNlwQATGnkq8Hvaxy+OlJXT55s8l6ioJDtxldRvVcJnh1arItn3o6OqSXZiFZECOcP3mL6ujTE1kM4R0ZISKdT55XS2rG/CBTte0gIZRPEebf5+f7oyG7uL2XV4nLGUB1LwrJ+EWMy/PXb90q7ACEeTfANuml3jP0txe/LRfwmOXfqKvbXFoY1vcwgcwmBweTBNupnqZXl8SDaNLTOS4rCw4hLWxk81ChesuUSojFvZ8EfanWnMpEkEMmArBSW9SC0SzAVW8Y0RPmyyp0zErJ5thatsw3SG9niRQe9/ixYuM6KjN5XFYmtD+4pI4LoUKUXlU0yyZSdvdhR4tJsI3g7lg+6ocX9/yUxh6LpEbv/1LLSSusxXuNCBDReVkhFZG9Leze4sAcWsufI7ppcybpGKrj7PxP4i4M5d2P0F8+TzRMtIQc33ofvbDtB3/sLYIaC9eX/QptzkvK9IHURttuFuYXWzpKNJBlFfYirPCw5L8jap2LMXH27wFJheMmmW9iFcPrQzNapolIrQGzJueSftj15biXZ88vSqwSzXqmFzW/jnyKfaaB3DTTAtkOHXKP1MB4vSP28lcG8AVgQRzxJMVsbzrS7fOg= 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)(1800799024)(366016)(376014)(23010399003)(52116014)(6133799003)(5113699003)(18002099003)(22082099003)(5023799004)(56012099006)(10067099003)(4143699003)(38350700014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N2cxT2Y4L2hlbjJzUUtjNnZGZ0pneEFLVERIczRjemNickFLSXljbjFQM25k?= =?utf-8?B?NkJYUzg4VUJqekYvUzZxcGJDTG9wYVdVeElGWWg5dTBNWjVia1hjN01DWGlq?= =?utf-8?B?ZFpnVW4xdGIzSk1qSVBsdVZDZjF5R1FqL25xMEptVkYxQm9hSU1MZTVieDJ5?= =?utf-8?B?MkExZTQ3dG5VMFRuSk9OMll1YXVVUW5mMG52TmN0bjlXbFZDREVLdHVDTzFU?= =?utf-8?B?S1ZyOU1rSWxnOHdUZHlhc2llUVZ5U0tTZGpCdnBEWXJYRUtyOFZYRHhqWFJz?= =?utf-8?B?dGtyalhoN3pzeVp3VkhZVDJqNEdEMWljdkhQWU10OXFtZDV1NTlYcFJZR3dB?= =?utf-8?B?b2oxRkhUZER6bWpUMnRLeU1STUx6TWRwbW84aHB6bzRBNDBOYXBLNGtXL1lw?= =?utf-8?B?bXJuclQyQ2I1SUdCNTJqMlp2RjFPMWxpYzdsRThhY1drNWdFdHk2aUsrNEZ4?= =?utf-8?B?VVlkY1Rtd2dFSlQ1ZXNteVltZk9sZXN4OHJ5RTVFVXViVENoVC9WaFRhTmVK?= =?utf-8?B?V01aSDUwSVMyenpVK2hxY1F0Tld2TGkxZk1PZFFkSWpJN1k2MFFGdFNqWDlI?= =?utf-8?B?QkFMNkVnSHRtQThHZ01iYm5BL3N6Ym81OWFPcm1YRnN5SDNsamJ2Ky9Hbk1v?= =?utf-8?B?RVR5czRPRWx0Vlo2NGwrdFhnUWpoY00vUGhzZ2xqQml4ZmJDeC9rbzhXeXQw?= =?utf-8?B?WVN2bmpSNkJkK0tTSkp0RXVwWEFPWGprU2ZvQzVhU1VUWUhtM3hXL2VUQ1Ar?= =?utf-8?B?b25HWVY5TDVESmwyWkhZWiswVDVGUy9HUHV1ZXo0RDlMZitPYzZYdGNYYTB0?= =?utf-8?B?dEF4NUU4SWdvQW1BSXBXU1NyQ0M0MHpTQm42Q3UwSWJxVGFwWGwvSTdnUDNn?= =?utf-8?B?bnR3Zzg4Q1kzZkNWdHB0Yzh4R0MzczQ0d3daS3Y2TWV0RWV2RUY5dFFEUFFJ?= =?utf-8?B?YjU4V1BWUStTZXdYVnFrZzVFK0UvWU0yT2JURDBhL01PNXpQS01acFRxOGpn?= =?utf-8?B?UWE5MlI0NU4wMmVkSUpzWmVtaWtXSlI5cUkxQ01kU0dXNk5ZVWw5eGM4S2VU?= =?utf-8?B?WjJNaWJ5ZjBQaFo2RUFSRGFIMXlnQmNaRzkvMVVWM2J5Qk9UaG1CcWF0WGw1?= =?utf-8?B?NFpqdGtmMXNiL3JPdjZyL3ZJcXd1TU1yNkFCSkVJSC8xUGhadlpKZnZ0MUNE?= =?utf-8?B?RzRva0NUc0ptdzErUWpabjJzODZGNGd6aHlSRFJ4L1ZUZHI1U1h4K01iaS8w?= =?utf-8?B?U2tYUFhrK0hjUDFGZEFVOGJHaURpMFA4TGM2S3gwUjBlZm9hM0tmdXdLMm9H?= =?utf-8?B?cDFpL0V1UmdUZkFuNzVSSlptRjViMy9jbVh1RkEwYVRneCt4a2UwMlphSWlP?= =?utf-8?B?SHFwQVJQbVJjRjlBZitua2hFTm82SFhxdkQvWGkvM2RMOGdoQkduVVB1RUZS?= =?utf-8?B?SHNKYm5hYisvbE90MFY4VXpXL3o1Mzl1a2xWY1A1bXdhbnVOUjNyS1BydEF0?= =?utf-8?B?NWNuNWtmc0NXQUNBeERnRUJFczdmQlIxd3laNWhwd2Zjd1pBODhYMzU1NCtF?= =?utf-8?B?WDRZbVJRTkVtemxsVDRFRTdIRlZqVjAwd05BNmRrNXc0eVNZQXhsWnF3Skcv?= =?utf-8?B?UmRLU1VpN3hWVXBGaHRTNDg4M3RWbTRjRzNBYWtSY0IrV2ZHNTdWOHNDbzNl?= =?utf-8?B?Zjl1Wk4wRWtJVG9qemFBOW1iSjE5VUNuMVBTZmZRV1pPR2NlTjNkQ2J0WGNU?= =?utf-8?B?TlpUTk1Dckh1VnRYc1VWYUgrUk9GSnVDWEJPMEozUmNkT3RNRGZXbmErMVZK?= =?utf-8?B?b2lXejluV0dvSFNEQ0YrK0pIbnRJbVJxd1hrU1N0Wi9RZldFT2o0a1VhblBl?= =?utf-8?B?RGcxSk9XVFYwRjMrN05jUG9CR3NBN2tYSUZYQkN2RGRMZDd4cE0zYUNDekRs?= =?utf-8?B?VzU4NmU0SHVTM3QvZkdSQmxVU3VQcFdzRXRrSFoyWFJCbzZwUjJacndoMjEv?= =?utf-8?B?aWVLZXQxZFFHa0t6N1I1R0Y5RVFRaFI2cEdVcldmbkJLOGZIcGxDTnJCSjV2?= =?utf-8?B?ekNhU3puditESHhvMnJhTVFsUmRpZFBkc0V6ZXlGUmRXZmJXWlRvRitNZTUy?= =?utf-8?B?b1BNTWQ1VVBRZG5HREZCQWQ1Y0I2RHhiQ3lMR3VueUhSVFd2Ny9vNVU4MldC?= =?utf-8?B?WEdjSVhFZmNzNlNaOGpXNVdhZlhyb3dyV2hPTWZIeDZuNDBSeUJnNW5FRXlW?= =?utf-8?B?OWtQQm9BenQ1b1JkZHMxSHFFRXRKZ05HNEtXa0NFLzM0L1B1MWlQVkdiV01Z?= =?utf-8?B?bTVMTmk5bFVLbDc4Y1RaenRJcUMwTDVmd3Rhdi9HdDNaTnI3RUdCbnhFQzlw?= =?utf-8?Q?RjWh/5oXrr2G7kR4=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: e32ece76-f2b6-4454-b1d0-08df0a99dac7 X-MS-Exchange-CrossTenant-AuthSource: VI0PR08MB10656.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Sep 2026 15:33:23.0948 (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: y5990KSOu1u4ACAHJj3Lf1BkgkknFiYjmUrUGEghTWQVts5yeWhvkSFLjT8fXy9iAEF0ogvJjN1XcAX4pORQI4v8KcveJxLkrl1Orj2cnlA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5678 > vhost_dev_init() closes the backend fd on failure, so the cleanup > path of vhost_blk_device_realize() closed vhostfd for the second > time. The cleanup path is also reachable with vhostfd never opened, > in which case we called close(-1). > > Fixes: 0ff3cb5ff2 ("block: add vhost-blk backend") > https://virtuozzo.atlassian.net/browse/VSTOR-143437 > Signed-off-by: Andrey Zhadchenko > > diff --git a/hw/block/vhost-blk.c b/hw/block/vhost-blk.c > index c52851fcf8b..9bd49fef2da 100644 > --- a/hw/block/vhost-blk.c > +++ b/hw/block/vhost-blk.c > @@ -318,6 +318,8 @@ static void vhost_blk_device_realize(DeviceState *dev, Error **errp) > if (ret < 0) { > error_setg(errp, "vhost-blk: vhost initialization failed: %s", > strerror(-ret)); > + /* vhost_dev_init() closes vhostfd on failure */ > + s->vhostfd = -1; > goto cleanup; > } > > @@ -328,7 +330,10 @@ cleanup: > qemu_del_vm_change_state_handler(s->mighand); > } > g_free(s->dev.vqs); Not related, but while we're here: vhost_blk_device_realize() s->dev.vqs = g_new0() vhost_dev_init() fails -> vhost_dev_cleanup(s->dev) memset(s->dev, 0) g_free(s->dev.vqs) Result: g_free(NULL) does nothing, array allocated with g_new0() leaks. Worth another patch. Or if it "Fixes:" the same commit - might fold into the same patch. Andrey -- Andrey Drobyshev