From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11021115.outbound.protection.outlook.com [52.101.65.115]) by lore.virtuozzo.com (Postfix) with ESMTPS id 0783280266 for ; Thu, 3 Sep 2026 14:56:13 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=s2MXSipkiblRHahAa/NqQ4sipvK8hm6r5/GwyDwixjnJ2RjIJIwANobrT2AATC1LK9GM9aFVoIfYj7FACvj2iulr+XV+RrZ4bzu8dCuW2Ivj8kVqKjAPZ+6oD+7AfVo/K54LRCPWABF9bw31DcuxWxK/qHMFGeBB9TobbMu/sFVWw3lRlhZ+wT5rsOinKtTk/SvwpCGpMiHdbvlgmrYiRPUek6717KiNJIp6x6jDXEqYmGP/zF3pc8V0Fq2WXu2Cxy4mrpS3H2IRfdHTHhIZ6MK05/fYeL8xKUDp7vXc5FT/2cKAORDcZ7qYA5QT9GwBO/r2YpgVyfaAyoar/6NZsw== 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=MFl/+BAw1qh3rYyoy+U00rLG9U4FuONJxz8HIamwO9Q=; b=P+ti5K1c1wPO31ADOv3HamtgomePxRtDVmuqgOPHoc4N1vkUipp7WEN/nSVHt3vV5noMUKd2zpTXX7eOOCy/Yyi1fObnCGWgxCZ33GkXWKYWmm7yGTOUfyfSPUcGJ5Cdja1KS7mSWmR9kSoqtKPKpdsCd323GXWa8TCFF8PjM6DvJYSYnTIK86xYJc5kL3pPe11fs10L9bA9YhatbsuXuO8vBEp20wgkb3DA4e2GlhqA+NR/ys7fE1+4gAgSpLBFNUtZl6MphNeKz48JCirQak+jG3S2KYY7LrRULPkFhchYlety31slRX4SLRqAeaLHPc4rFGPGdBSFbs9Lnd+Gyg== 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=MFl/+BAw1qh3rYyoy+U00rLG9U4FuONJxz8HIamwO9Q=; b=zJBhrygF+ydTIB1iFqEOmpj/CS/9QUpBqVGY73Ch4yylGO00GgJbAtpH9pQKxdBJMf2NwU/HaiYzndHGdEKLjZgqAQIDo8HWM3WPDn2nJK5a9vmHFtaWBX/xea70KkFcIlgF6P77QgOcQUpcvEC8BFZbb362h8ZA1TA2wQ7VAuRFIM4rxDbqb7hIW6l0XLrnBhumjwBMn8/oNhooyEoeRcDBRQGC+y2IJu3pHFBtxZ3201AiO+mkITV7L1rh3/Y7WPMzRsRUF9y57jwTXFcZ1Y2Qi4VOdqZSZY6hAR2kCp8MSNZx6ECuso8Uva2XIxghO2p8A7lgC8h9ABvM0SwgZQ== 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 PA4PR08MB6128.eurprd08.prod.outlook.com (2603:10a6:102:f2::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.382.10; Thu, 3 Sep 2026 14:56:10 +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; Thu, 3 Sep 2026 14:56:08 +0000 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Subject: Re: [QEMU HCI-8.0 PATCH 1/5] blk: factor out validation From: Andrey Drobyshev To: Andrey Zhadchenko Cc: svt-core@virtuozzo.com, den@openvz.org, andrey.drobyshev@virtuozzo.com In-Reply-To: <20260903123204.24035-2-andrey.zhadchenko@virtuozzo.com> References: <20260903123204.24035-1-andrey.zhadchenko@virtuozzo.com> <20260903123204.24035-2-andrey.zhadchenko@virtuozzo.com> Date: Thu, 03 Sep 2026 17:56:04 +0300 Message-Id: <178844736480.581266.14992214745497463419.b4-review@b4> X-Mailer: b4 0.16.0 X-ClientProxiedBy: FR5P281CA0017.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f1::9) To VI0PR08MB10656.eurprd08.prod.outlook.com (2603:10a6:800:20a::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VI0PR08MB10656:EE_|PA4PR08MB6128:EE_ X-MS-Office365-Filtering-Correlation-Id: 05132b4f-e862-407d-285c-08df09cb7c97 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|52116014|366016|1800799024|376014|23010399003|22082099003|18002099003|5113699003|3023799007|4143699003|56012099006|10067099003|38350700014; X-Microsoft-Antispam-Message-Info: eF20RYfVKVIgSytH3X3FVIgx/slVEyq8VkINF8ZkLmQ59cv+ENDKpaWo0QWn0QyBJLBzSHWFcHhb2eBJzAaMPIdz/GO8RuYEDVaRPMCBrtRDd4iGw20JQWKidQ3Ugs4FVZH8BH0rsgQSUuXAiy54VhbD57zvwbRGWyEM/bf8QL2d/GWO2MBaixpw4UQfRfyM7xd8O2KUmwMMe9CvCzrAFG6Pqeb9Hgokq0vRacWK10DQoddixvfYeA1q/23Kz4+90PYQ34Rli4Hzvcotuj3pwwD8wECuRClBW7i+SwwNx2/m9KoFU/vQzNIUOvDSMxx/9ZoYh7K3/O4F1DLWgnVN8HnKfV8YlGgom7IvTMT+v0j/F+jDXxoOVQXAVsI5eActO2m9cCNLIr4v6UQhMMCc6pa3UaD7SbkY1ggAl4+zCyzeBGKO6cJiUZ43EXAiQmQAr/8wl7bKWFhfKN+46fm1zwAv3YCYiZeO4q9DrUtnFidf+oj+kvTwCV02CO3EXIr1+1ovKb+AUZLu9PCMfjx3ZCS+RSFFgWSRpGg9n8TRQTjSLtdplJ7BRjcq1padzgxic+DydnF63ZPMkI/hwT0IZljcOsVMiA+poQz3ZGTIaEDzAKGZm0wLkDNrEly2iO96UcpRiNO0itB6kVzbN3lEPPtQod2W8f+idPmz2OWGU3oPSdOOpuHfiUj1oYmvOFXcHqbfm4VJ/bKZSvKA5dBJwg+y0ZU9wbogAjkeHYetAPw= 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)(52116014)(366016)(1800799024)(376014)(23010399003)(22082099003)(18002099003)(5113699003)(3023799007)(4143699003)(56012099006)(10067099003)(38350700014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?b0RNRFVkbW42YWVGTVRMZTY1R3BHZGtyNUQxTUxjdjhJL3VrNzNiVGs5TTRm?= =?utf-8?B?c3IxM2pRU09VcDhsWFdsdG5TVmtUTnNOMFB1ZjNnQ2tSU2hTQk1FYktnSlE5?= =?utf-8?B?MHpTNGN1MkNVeWZId1EzZTZzdXAzRUFZaStGU0JWZ3YzMndpR094Ums1Zm11?= =?utf-8?B?a0VKdjRDZUd1c0toeStnZUlXcDVxNlRkVHZSK2NwaFRiNVhEVG9tM3hHZGNn?= =?utf-8?B?QW0xaitrckd3M2VmU09MZGxDZ2NPUE9RenhZY0FNTGJhTWpITW1ZenZER1I1?= =?utf-8?B?ZHRDTnhwY3hZR3FBRzNOU01icU9wVWU2dllJRjJlWm1Lb1VDRXU4VmRidjVV?= =?utf-8?B?VUREYytSS0FOaWhKV0tQeEhUWmNvUzh4N1RxbStRMWNCb1FsZzBjMmNZa01E?= =?utf-8?B?SG1pVFBSK0o2MVB4SFgrWHlBSUdzc1pxZVlJS29sMmRvT1dyd2dnVW8zRC9V?= =?utf-8?B?TlBHcG45emVORWg0TG5Welg5YU15MUNlMS9ndjNFZEhXLzg4UndvR2VCOEJ2?= =?utf-8?B?UDdvdjVUNEFWTDJHSG5aclR1cnlkUDh3elkzaUZBSGZWRWlRMmtMbC9WNGJD?= =?utf-8?B?TEh6R3BXNGZ5bzE0czFSdlFjN3doRTlWZ3plZ3RyRmxpOUdGTmF3N09YZkxZ?= =?utf-8?B?TnBvZ3MwQ0hMOENsSERwWlp0QTdlUW50NTl6Ylh4UnhvK281MlNJN2NUaW5M?= =?utf-8?B?Y2wrUnZnekhRVUNJaWE1elJ0MVRYRGFBZlB5YURlLzlLR1k0Uk5ac1U3a1Vv?= =?utf-8?B?YWcrQnM5VHBkNzBxb3hFNy8xK0JBaG5IY2RUOU8yeHI5eHEydWVWQ3VWUnJX?= =?utf-8?B?a2h0NTk0MUxCdElhY0RzVVB3RjIzdU8yUmoyZHpvM0lRVDJoMFY4VUtYZGw0?= =?utf-8?B?Z0k3VnZSMHV4Y3ZSd0N2d3ZXam5oeDIrbWxaRHpTZjN1UUszcURVaVZLQnlR?= =?utf-8?B?SzJjd05BUk9STE1UOUdva3BOM1YvZ1FpUUViREdnaU5IMlZsS0prN29MTUhF?= =?utf-8?B?Q08wSitIL2pLdForbjZmNnBkR2ZMWXN3Vy9FYnR4QTJKV1VvV3A5TkJ4eEEw?= =?utf-8?B?Q1JzY29meW1ISzc4MHlqdE5NdnpuTEdRMXc5SWJ6VFZSTk5KbVFQQjM2dG0z?= =?utf-8?B?OGhZV0VQdDdZY0VDSm9XRWtRdXd2Y3VvZ3FrM3dlSXN5aUxiMHgyT1hqbFZu?= =?utf-8?B?STBZaDhRQk53ZFU0ajM3K2R0eUVMSVpNN3hqbVNvaFhBbGlhSkJHR3RFY1Rl?= =?utf-8?B?Sm8zYXZMTUYyaGxTdVpycko1bThGYlQ4dDZkM1UwU0Q0ZlUrWjVpOTkvVUkz?= =?utf-8?B?QmFCWi9oQ1dwenowclJreFQxelNsclliUDBpWndmdFNEcDdacWF2S1lUclRQ?= =?utf-8?B?Wm9sODNNTnRnM1RocmMzdnhkVDdNT1BwbkxWc1dVQ1J2MmJtY2cwZnBWcjJW?= =?utf-8?B?VzM1WGVGWGsvS3UvdzlKME83NGdpNjVrcVA3d1VjdWd0UXBTNlJmQzBLREht?= =?utf-8?B?Y1Z2STBUWXpONGtyMFJQc3NhUUdQdlV3OEljUXpIcWdqNHJZS3RQQXZ0Rk9o?= =?utf-8?B?YTAxMGRVRktTaW0yUjFYY1NlSENWN25IZWNpOVljcDNLejRXSy9LYWh4clRh?= =?utf-8?B?TUZOS2tEaDU2a0FFbjFlZVRsRTNPalUzUHlYajJCcndGcmpsZXl4UXZyZVhn?= =?utf-8?B?T0cyaUorS0IrQlpBKzRueURhV1liMGh3WnkrdGZGcUhHYWdxK0RQT05nN1lT?= =?utf-8?B?dTB4em1QTjY3Y1ZRcTAzWFJTY1VBRFNtbnhXZC9PVFluWWlxc25WS05uc29T?= =?utf-8?B?NzdQMFVZd2E2aUtLWDNQSmt3a3BoVnhQTWdkY2R4Wm1pQnlnVjIyYU14dC92?= =?utf-8?B?V3NNWmh4OFVKSHA3L24zVm1CZG5WckNNdmQ1NG9wZ1BRaVV0cXFjckY5MFQz?= =?utf-8?B?UDU4alZUcUxFVmJvRGpUWGFpdUlReUtlTVMxYzhoSkxIbHRBbjljcEs2MCtX?= =?utf-8?B?WSs5REFQUEE3Q2JUcSs5ek5DdTZwSXJkbmd0cTBKQkg4c1drVm9kUVpIUk5K?= =?utf-8?B?aXp3OGp1Wm9YQjFtd0Q4T1JDOFBOa0lNNlQzbHJaMFJ5MksyYVBDSmdxbWxu?= =?utf-8?B?Mm1ta0M0T3RLcERxR2IzbkU0c2daVVpDdWZuS29qVVZiT1BmYnlOc1lISWVx?= =?utf-8?B?c201Uk52OE4rQlgwdFJDbHhPS0liOW9MN1RhdlJSV0hIQ1puTlVKRDl1Z0V2?= =?utf-8?B?RGxPMjRmK3NJd0d1bFE4bUhON2RWN2xjZSt4TUN4NnU2aFZrWGhLSmI1VWVD?= =?utf-8?B?QTFVRjBVZXZiVkNWNXRFVmVCamI0Ti93V1NmMEJkNzYyTnloOGNDMTFpNURk?= =?utf-8?Q?ELfUzombmr+QEvgg=3D?= X-Auto-Response-Suppress: DR, OOF, AutoReply X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 05132b4f-e862-407d-285c-08df09cb7c97 X-MS-Exchange-CrossTenant-AuthSource: VI0PR08MB10656.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Sep 2026 14:56:08.6938 (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: NLtzMcyYFgnT7c8uiRDI3hNg/nZfP7QVX8POb3/F2KtEdIgw1eXm3pvhVqKYDN8QI1FHDmg/hI1b3kP5n3jBN/ueTfoxEcKT2QLnc8WKmlM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6128 Nit: "blk:" is never used as a prefix, better be "block:". > Preparational patch. This helper will be used in the next patches > to validate vhost-blk block parameters. > > https://virtuozzo.atlassian.net/browse/VSTOR-143437 > Signed-off-by: Andrey Zhadchenko > > diff --git a/hw/block/block.c b/hw/block/block.c > index 47897ca5d3c..6f135b7e2f9 100644 > --- a/hw/block/block.c > +++ b/hw/block/block.c > @@ -162,6 +162,11 @@ bool blkconf_blocksizes(BlockConf *conf, Error **errp) > } > } > > + return blkconf_validate_blocksizes(conf, errp); > +} > + > +bool blkconf_validate_blocksizes(BlockConf *conf, Error **errp) > +{ When calling blkconf_blocksizes() -> blkconf_validate_blocksizes(), we have conf->logical_block_size preset. But since we turn blkconf_validate_blocksizes() into a separate helper, this precondition isn't true in general. And we do further: conf->min_io_size / conf->logical_block_size - potential division by zero. Andrey -- Andrey Drobyshev