mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
net: hns3: add max vector number check for pf
[ Upstream commit75edb61086] Each pf supports max 64 vectors and 128 tqps. For 2p/4p core scenario, there may be more than 64 cpus online. So the result of min_t(u16, num_Online_cpus(), tqp_num) may be more than 64. This patch adds check for the vector number. Fixes:dd38c72604("net: hns3: fix for coalesce configuration lost during reset") Signed-off-by: Jian Shen <shenjian15@huawei.com> Signed-off-by: Peng Li <lipeng321@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
86760e0dfe
commit
d5e2df9ff5
@@ -2691,6 +2691,8 @@ static int hns3_nic_init_vector_data(struct hns3_nic_priv *priv)
|
|||||||
|
|
||||||
static int hns3_nic_alloc_vector_data(struct hns3_nic_priv *priv)
|
static int hns3_nic_alloc_vector_data(struct hns3_nic_priv *priv)
|
||||||
{
|
{
|
||||||
|
#define HNS3_VECTOR_PF_MAX_NUM 64
|
||||||
|
|
||||||
struct hnae3_handle *h = priv->ae_handle;
|
struct hnae3_handle *h = priv->ae_handle;
|
||||||
struct hns3_enet_tqp_vector *tqp_vector;
|
struct hns3_enet_tqp_vector *tqp_vector;
|
||||||
struct hnae3_vector_info *vector;
|
struct hnae3_vector_info *vector;
|
||||||
@@ -2703,6 +2705,8 @@ static int hns3_nic_alloc_vector_data(struct hns3_nic_priv *priv)
|
|||||||
/* RSS size, cpu online and vector_num should be the same */
|
/* RSS size, cpu online and vector_num should be the same */
|
||||||
/* Should consider 2p/4p later */
|
/* Should consider 2p/4p later */
|
||||||
vector_num = min_t(u16, num_online_cpus(), tqp_num);
|
vector_num = min_t(u16, num_online_cpus(), tqp_num);
|
||||||
|
vector_num = min_t(u16, vector_num, HNS3_VECTOR_PF_MAX_NUM);
|
||||||
|
|
||||||
vector = devm_kcalloc(&pdev->dev, vector_num, sizeof(*vector),
|
vector = devm_kcalloc(&pdev->dev, vector_num, sizeof(*vector),
|
||||||
GFP_KERNEL);
|
GFP_KERNEL);
|
||||||
if (!vector)
|
if (!vector)
|
||||||
|
|||||||
Reference in New Issue
Block a user