Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp49447pxb; Tue, 28 Sep 2021 15:10:10 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyeunqsL9HpSv/6SKrP4Ba2/1ocijEGKZPihQNN0WMrE/bTp8TzLlqH9YJPspRhDYunZq3n X-Received: by 2002:a17:90b:3810:: with SMTP id mq16mr2585355pjb.0.1632867010659; Tue, 28 Sep 2021 15:10:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1632867010; cv=none; d=google.com; s=arc-20160816; b=BWWLHTFO0B6Pp9Lb+usZTb7YQizfjpYh7FjBr96FSfhMGQy19Fd9CB/zo+iSQxWB6a mv3ShRK0TJZQNjSv9Lif6wocU8f5F7gEKwsujZozKOrJeWky/1+7QIXraEttx1hnJxTU sm5FuwSKSa35wYmM2+lKqJ1k7NiCbHHxGNA3tu0GE4YY9kkG6PHHThuR4LqUYLEjGngc MG1dVQK+pSZ/UI0bJcCK5UDmXJu5KaFrF8PhKG2TIA7RbQg6KV+AKUQGz7t3vJ69IJ7s lNp6UNyJKrplxdhuzdPo+tu5dlM4Ux6inRVetQhh6IrdNiLfxYqL3ClCH2PKJZeuB0h8 yF3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-disposition:mime-version:message-id :subject:cc:to:from:date:dkim-signature; bh=XquxNPWXWAepmVvU+xm7qozZdZdeVtz9ub/cED4Nt2A=; b=nCiNDFuxH9v/b872GRuL6KrLM9tad6jkfEEhvtEFVzXYBKM768NkuJXwbEJcLDhoWH 1nv1mLE3n6XjbckHr+CvqRy5HWix4mWkXmUHbtXIxBblH6dxmlojZGoHCBqXtGIq8rXS gjfJf+jSy4DcqJou8lF5gSvEzJgr0rtbSWP97QjUj7GiELgPHr0y5FboiOrkW82z1ioi yb6teUeOSk7Jy7nP0HfdDHvJeMnjsQadSeACrb3B3Z0rdJXzQyOioaoZ2Np6HLKDCi2r FaEaa3AYxvks/KzKLoN2TKPSrpfuSNh0zQVbByaX84ZGLz3NNpKrVqKYBe6iIYqBBver Pblg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=BfdMLxcZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m9si308388pjd.0.2021.09.28.15.09.57; Tue, 28 Sep 2021 15:10:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=BfdMLxcZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243047AbhI1WJg (ORCPT + 99 others); Tue, 28 Sep 2021 18:09:36 -0400 Received: from mail.kernel.org ([198.145.29.99]:60702 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243003AbhI1WJf (ORCPT ); Tue, 28 Sep 2021 18:09:35 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 6A62461357; Tue, 28 Sep 2021 22:07:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1632866875; bh=bGJdsJGfySTNgdkIiC4cs97RHA14UA54yMOqudVCdzQ=; h=Date:From:To:Cc:Subject:From; b=BfdMLxcZc/xF1ud8tjWt4pwYBFEUtGCdKFqC+ambXqxza0WlPMs8FLuehzrvWywB5 CApDW9V9enr97KLolM9lgINnwcU6dunz1WGjYOV12l6S9XvCcRGu9ZLtCR0vTs2phJ CxeFNewaP9SSFXbvKP2IwD9Ng7VXytZbNfBE3wa/dVIc/u68cP5Dc5H84w+DU3DfUH Br2afPXEUFX7vAC1WcFsiNo8BCXLXvP1qCQtpL//MYzpOCl6sxf7VxiDKZX16LYqpw spDlb59mKyIrxRYJALn31IvpPFSSgHUT1MkzQKO7sGxlo1GTJeMc42/6CRxrdNKjWh pmrZBemVZASHg== Date: Tue, 28 Sep 2021 17:11:57 -0500 From: "Gustavo A. R. Silva" To: Saeed Mahameed , Leon Romanovsky , "David S. Miller" , Jakub Kicinski Cc: netdev@vger.kernel.org, linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org, "Gustavo A. R. Silva" , linux-hardening@vger.kernel.org Subject: [PATCH][net-next] net/mlx5: Use struct_size() helper in kvzalloc() Message-ID: <20210928221157.GA278221@embeddedor> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Make use of the struct_size() helper instead of an open-coded version, in order to avoid any potential type mistakes or integer overflows that, in the worse scenario, could lead to heap overflows. Link: https://github.com/KSPP/linux/issues/160 Signed-off-by: Gustavo A. R. Silva --- drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c b/drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c index 18e5aec14641..f542a36be62c 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/fs_counters.c @@ -497,8 +497,7 @@ static struct mlx5_fc_bulk *mlx5_fc_bulk_create(struct mlx5_core_dev *dev) alloc_bitmask = MLX5_CAP_GEN(dev, flow_counter_bulk_alloc); bulk_len = alloc_bitmask > 0 ? MLX5_FC_BULK_NUM_FCS(alloc_bitmask) : 1; - bulk = kvzalloc(sizeof(*bulk) + bulk_len * sizeof(struct mlx5_fc), - GFP_KERNEL); + bulk = kvzalloc(struct_size(bulk, fcs, bulk_len), GFP_KERNEL); if (!bulk) goto err_alloc_bulk; -- 2.27.0