Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp192360pxv; Wed, 14 Jul 2021 01:34:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwA9AqtWW4cftVb4CyFBGSciFcm0RtnT0GZy2g6KcLV++zZZTpVBTmjSwyLzFzDRUAVDD2g X-Received: by 2002:a92:7a12:: with SMTP id v18mr5834576ilc.27.1626251697720; Wed, 14 Jul 2021 01:34:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626251697; cv=none; d=google.com; s=arc-20160816; b=ifxZAjVSzDJnO+85latAHEEuNiqpMs6wEJjVviOT1uBNvGyFHiwF+CUel3oRmo2F3b 4Bl6V2espgCPC6nSCxSb3rgHlFJU/YF5bQenAA7ld4vwKLlRX+92STQ3YktArpvdnQzQ FdGPSvLw4Iz1sAzrEo5azLP9/6oF5wT14fwvwAEbO81+oCwWwjJnB+I94c/8RNUpcP5G 7J9gLbswDKKbF96IdNtsghMEB3QshM8Ukj41NuiRD622kwaCjdAfwxwYPB8DO0p1GGrX lf17+UgnXxj+macKCpvfhia35chyh9QQ5Htct9ZYt0iZl480R+WOiVj1HV1JWzJul4R8 GEtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=YfeJpbPxG9fx+/0sfAIwshUDC+1IVb0ib5MUtU4A3EU=; b=xNJxAGV7AKtsa1aWcW8IqpxCiqYrXXdvmdBqBgW8G4tpJdh4HZuvWiMUAI4yPNEuDF 7JCymZNm8LV1F211fSCU329+zGB4U+ODI0mWl8G7Hbio+tjN7fGSrl4d4uBSQYkJV6ei PxVA/ZZ2KpGeOQOueNBzK+jWX+Z8aYQTkGuGMHNhwnxkXj1tuM4Sy4Sps/1S2sTzvouh TIU9fOkX+Djpdzr4cHzFe59oiOw9H/iZIo8ikUT/6Wq7hvCJjuBkmt7Em5rbO3vE/tjC 02dJk/fNzWlljCg/k13xF6PYpineonEWJV0BGoujO+hP646Btbhtv6XK6lwTF6mNEKag YO9g== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k14si1827851ion.22.2021.07.14.01.34.45; Wed, 14 Jul 2021 01:34:57 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238598AbhGNIfg (ORCPT + 99 others); Wed, 14 Jul 2021 04:35:36 -0400 Received: from smtp09.smtpout.orange.fr ([80.12.242.131]:28292 "EHLO smtp.smtpout.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238592AbhGNIfa (ORCPT ); Wed, 14 Jul 2021 04:35:30 -0400 Received: from localhost.localdomain ([86.243.172.93]) by mwinf5d85 with ME id UwYb2500C21Fzsu03wYbte; Wed, 14 Jul 2021 10:32:37 +0200 X-ME-Helo: localhost.localdomain X-ME-Auth: Y2hyaXN0b3BoZS5qYWlsbGV0QHdhbmFkb28uZnI= X-ME-Date: Wed, 14 Jul 2021 10:32:37 +0200 X-ME-IP: 86.243.172.93 From: Christophe JAILLET To: jiri@nvidia.com, idosch@nvidia.com, davem@davemloft.net, kuba@kernel.org Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org, Christophe JAILLET Subject: [PATCH] net: switchdev: Simplify 'mlxsw_sp_mc_write_mdb_entry()' Date: Wed, 14 Jul 2021 10:32:33 +0200 Message-Id: X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Use 'bitmap_alloc()/bitmap_free()' instead of hand-writing it. This makes the code less verbose. Also, use 'bitmap_alloc()' instead of 'bitmap_zalloc()' because the bitmap is fully overridden by a 'bitmap_copy()' call just after its allocation. While at it, remove an extra and unneeded space. Signed-off-by: Christophe JAILLET --- drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c index c5ef9aa64efe..61911fed6aeb 100644 --- a/drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c +++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c @@ -1569,7 +1569,6 @@ mlxsw_sp_mc_write_mdb_entry(struct mlxsw_sp *mlxsw_sp, { long *flood_bitmap; int num_of_ports; - int alloc_size; u16 mid_idx; int err; @@ -1579,18 +1578,17 @@ mlxsw_sp_mc_write_mdb_entry(struct mlxsw_sp *mlxsw_sp, return false; num_of_ports = mlxsw_core_max_ports(mlxsw_sp->core); - alloc_size = sizeof(long) * BITS_TO_LONGS(num_of_ports); - flood_bitmap = kzalloc(alloc_size, GFP_KERNEL); + flood_bitmap = bitmap_alloc(num_of_ports, GFP_KERNEL); if (!flood_bitmap) return false; - bitmap_copy(flood_bitmap, mid->ports_in_mid, num_of_ports); + bitmap_copy(flood_bitmap, mid->ports_in_mid, num_of_ports); mlxsw_sp_mc_get_mrouters_bitmap(flood_bitmap, bridge_device, mlxsw_sp); mid->mid = mid_idx; err = mlxsw_sp_port_smid_full_entry(mlxsw_sp, mid_idx, flood_bitmap, bridge_device->mrouter); - kfree(flood_bitmap); + bitmap_free(flood_bitmap); if (err) return false; -- 2.30.2