|
|
@@ -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)
|
|
|
{
|
|
|
+#define HNS3_VECTOR_PF_MAX_NUM 64
|
|
|
+
|
|
|
struct hnae3_handle *h = priv->ae_handle;
|
|
|
struct hns3_enet_tqp_vector *tqp_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 */
|
|
|
/* Should consider 2p/4p later */
|
|
|
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),
|
|
|
GFP_KERNEL);
|
|
|
if (!vector)
|