* [Intel-wired-lan] [PATCH iwl-next v1 1/2] i40e: Split VF MDD event statistics @ 2023-08-11 12:46 Jan Sokolowski 2023-08-11 12:46 ` [Intel-wired-lan] [PATCH iwl-next v1 2/2] i40e: add mdd-auto-reset-vf private flag Jan Sokolowski 0 siblings, 1 reply; 5+ messages in thread From: Jan Sokolowski @ 2023-08-11 12:46 UTC (permalink / raw) To: intel-wired-lan Currently, VF MDD event statistics do not make a distinction between TX and RX events. As further changes will require them to be separate, a split is needed. Refactor VF MDD event counting by splitting into separate variables for TX and RX events. Signed-off-by: Jan Sokolowski <jan.sokolowski@intel.com> --- drivers/net/ethernet/intel/i40e/i40e_debugfs.c | 2 +- drivers/net/ethernet/intel/i40e/i40e_main.c | 4 ++-- drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c | 4 ++++ drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h | 8 +++++++- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/drivers/net/ethernet/intel/i40e/i40e_debugfs.c b/drivers/net/ethernet/intel/i40e/i40e_debugfs.c index 9954493cd448..747ee33e6a89 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_debugfs.c +++ b/drivers/net/ethernet/intel/i40e/i40e_debugfs.c @@ -743,7 +743,7 @@ static void i40e_dbg_dump_vf(struct i40e_pf *pf, int vf_id) dev_info(&pf->pdev->dev, "vf %2d: VSI id=%d, seid=%d, qps=%d\n", vf_id, vf->lan_vsi_id, vsi->seid, vf->num_queue_pairs); dev_info(&pf->pdev->dev, " num MDD=%lld\n", - vf->num_mdd_events); + vf->mdd_rx_events.count + vf->mdd_tx_events.count); } else { dev_info(&pf->pdev->dev, "invalid VF id %d\n", vf_id); } diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c index 29ad1797adce..f346ba6ef7bf 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_main.c +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c @@ -11223,7 +11223,7 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) reg = rd32(hw, I40E_VP_MDET_TX(i)); if (reg & I40E_VP_MDET_TX_VALID_MASK) { wr32(hw, I40E_VP_MDET_TX(i), 0xFFFF); - vf->num_mdd_events++; + vf->mdd_tx_events.count++; dev_info(&pf->pdev->dev, "TX driver issue detected on VF %d\n", i); dev_info(&pf->pdev->dev, @@ -11234,7 +11234,7 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) reg = rd32(hw, I40E_VP_MDET_RX(i)); if (reg & I40E_VP_MDET_RX_VALID_MASK) { wr32(hw, I40E_VP_MDET_RX(i), 0xFFFF); - vf->num_mdd_events++; + vf->mdd_rx_events.count++; dev_info(&pf->pdev->dev, "RX driver issue detected on VF %d\n", i); dev_info(&pf->pdev->dev, diff --git a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c index 4741ba14ab27..7bb34498fa0e 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c +++ b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c @@ -1511,6 +1511,10 @@ static void i40e_cleanup_reset_vf(struct i40e_vf *vf) vf->num_vlan = 0; } + /* clear mdd statistics */ + memset(&vf->mdd_tx_events, 0, sizeof(vf->mdd_tx_events)); + memset(&vf->mdd_rx_events, 0, sizeof(vf->mdd_rx_events)); + /* Tell the VF driver the reset is done. This needs to be done only * after VF has been fully initialized, because the VF driver may * request resources immediately after setting this flag. diff --git a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h index 895b8feb2567..d75ba0a03169 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h +++ b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h @@ -62,6 +62,10 @@ struct i40evf_channel { u64 max_tx_rate; /* bandwidth rate allocation for VSIs */ }; +struct i40e_mdd_vf_events { + u64 count; /* total count of Rx|Tx events */ +}; + /* VF information structure */ struct i40e_vf { struct i40e_pf *pf; @@ -90,7 +94,9 @@ struct i40e_vf { u8 num_queue_pairs; /* num of qps assigned to VF vsis */ u8 num_req_queues; /* num of requested qps */ - u64 num_mdd_events; /* num of mdd events detected */ + /* num of mdd tx and rx events detected */ + struct i40e_mdd_vf_events mdd_rx_events; + struct i40e_mdd_vf_events mdd_tx_events; unsigned long vf_caps; /* vf's adv. capabilities */ unsigned long vf_states; /* vf's runtime states */ -- 2.31.1 _______________________________________________ Intel-wired-lan mailing list Intel-wired-lan@osuosl.org https://lists.osuosl.org/mailman/listinfo/intel-wired-lan ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Intel-wired-lan] [PATCH iwl-next v1 2/2] i40e: add mdd-auto-reset-vf private flag 2023-08-11 12:46 [Intel-wired-lan] [PATCH iwl-next v1 1/2] i40e: Split VF MDD event statistics Jan Sokolowski @ 2023-08-11 12:46 ` Jan Sokolowski 2023-08-14 22:28 ` Tony Nguyen 2023-08-17 12:35 ` kernel test robot 0 siblings, 2 replies; 5+ messages in thread From: Jan Sokolowski @ 2023-08-11 12:46 UTC (permalink / raw) To: intel-wired-lan Since VF RX MDD events should disable the queue, add ethtool private flag mdd-auto-reset-vf to configure VF reset to re-enable the queue. This can be used by a system's administrator to select the desired level of security in running VF's. Signed-off-by: Jan Sokolowski <jan.sokolowski@intel.com> --- drivers/net/ethernet/intel/i40e/i40e.h | 2 +- .../net/ethernet/intel/i40e/i40e_ethtool.c | 1 + drivers/net/ethernet/intel/i40e/i40e_main.c | 75 ++++++++++++++++--- .../ethernet/intel/i40e/i40e_virtchnl_pf.h | 2 + 4 files changed, 70 insertions(+), 10 deletions(-) diff --git a/drivers/net/ethernet/intel/i40e/i40e.h b/drivers/net/ethernet/intel/i40e/i40e.h index 6e310a539467..72bd45c4f9ba 100644 --- a/drivers/net/ethernet/intel/i40e/i40e.h +++ b/drivers/net/ethernet/intel/i40e/i40e.h @@ -603,7 +603,7 @@ struct i40e_pf { * in abilities field of i40e_aq_set_phy_config structure */ #define I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED BIT(27) - +#define I40E_FLAG_MDD_AUTO_RESET_VF BIT(28) struct i40e_client_instance *cinst; bool stat_offsets_loaded; struct i40e_hw_port_stats stats; diff --git a/drivers/net/ethernet/intel/i40e/i40e_ethtool.c b/drivers/net/ethernet/intel/i40e/i40e_ethtool.c index afc4fa8c66af..54bdf477bcd6 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_ethtool.c +++ b/drivers/net/ethernet/intel/i40e/i40e_ethtool.c @@ -457,6 +457,7 @@ static const struct i40e_priv_flags i40e_gstrings_priv_flags[] = { I40E_PRIV_FLAG("base-r-fec", I40E_FLAG_BASE_R_FEC, 0), I40E_PRIV_FLAG("vf-vlan-pruning", I40E_FLAG_VF_VLAN_PRUNING, 0), + I40E_PRIV_FLAG("mdd-auto-reset-vf", I40E_FLAG_MDD_AUTO_RESET_VF, 0), }; #define I40E_PRIV_FLAGS_STR_LEN ARRAY_SIZE(i40e_gstrings_priv_flags) diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c index f346ba6ef7bf..6c483f7dd279 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_main.c +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c @@ -11153,6 +11153,52 @@ static void i40e_handle_reset_warning(struct i40e_pf *pf, bool lock_acquired) i40e_reset_and_rebuild(pf, false, lock_acquired); } +/** + * i40e_print_vf_rx_mdd_event - print VF Rx malicious driver detect event + * @vf: pointer to the VF structure + */ +static void i40e_print_vf_rx_mdd_event(struct i40e_pf *pf, struct i40e_vf *vf) +{ + dev_err_ratelimited(&pf->pdev->dev, "%lld Rx Malicious Driver Detection events detected on PF %d VF %d MAC %pm. mdd-auto-reset-vfs=%s\n", + vf->mdd_rx_events.count, + pf->hw.pf_id, + vf->vf_id, + vf->default_lan_addr.addr, + (I40E_FLAG_MDD_AUTO_RESET_VF & pf->flags) ? "on" : "off"); +} + +/** + * i40e_print_vfs_mdd_events - print VFs malicious driver detect event + * @pf: pointer to the PF structure + * + * Called from i40e_handle_mdd_event to rate limit and print VFs MDD events. + */ +static void i40e_print_vfs_mdd_events(struct i40e_pf *pf) +{ + struct i40e_vf *vf; + unsigned int i; + + for (i = 0; i < pf->num_alloc_vfs; i++) { + vf = &pf->vf[i]; + /* only print Rx MDD event message if there are new events */ + if (vf->mdd_rx_events.count != vf->mdd_rx_events.last_printed) { + vf->mdd_rx_events.last_printed = vf->mdd_rx_events.count; + i40e_print_vf_rx_mdd_event(pf, vf); + } + + /* only print Tx MDD event message if there are new events */ + if (vf->mdd_tx_events.count != vf->mdd_tx_events.last_printed) { + vf->mdd_tx_events.last_printed = vf->mdd_tx_events.count; + dev_err_ratelimited(&pf->pdev->dev, "%lld Tx Malicious Driver Detection events detected on PF %d VF %d MAC %pM.\n", + vf->mdd_tx_events.count, + pf->hw.pf_id, + vf->vf_id, + vf->default_lan_addr.addr); + } + } +} + + /** * i40e_handle_mdd_event * @pf: pointer to the PF structure @@ -11167,8 +11213,13 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) u32 reg; int i; - if (!test_bit(__I40E_MDD_EVENT_PENDING, pf->state)) + if (!test_and_clear_bit(__I40E_MDD_EVENT_PENDING, pf->state)) { + /* Since the VF MDD event logging is rate limited, check if + * there are pending MDD events. + */ + i40e_print_vfs_mdd_events(pf); return; + } /* find what triggered the MDD event */ reg = rd32(hw, I40E_GL_MDET_TX); @@ -11224,10 +11275,6 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) if (reg & I40E_VP_MDET_TX_VALID_MASK) { wr32(hw, I40E_VP_MDET_TX(i), 0xFFFF); vf->mdd_tx_events.count++; - dev_info(&pf->pdev->dev, "TX driver issue detected on VF %d\n", - i); - dev_info(&pf->pdev->dev, - "Use PF Control I/F to re-enable the VF\n"); set_bit(I40E_VF_STATE_DISABLED, &vf->vf_states); } @@ -11235,11 +11282,19 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) if (reg & I40E_VP_MDET_RX_VALID_MASK) { wr32(hw, I40E_VP_MDET_RX(i), 0xFFFF); vf->mdd_rx_events.count++; - dev_info(&pf->pdev->dev, "RX driver issue detected on VF %d\n", - i); - dev_info(&pf->pdev->dev, - "Use PF Control I/F to re-enable the VF\n"); set_bit(I40E_VF_STATE_DISABLED, &vf->vf_states); + + if (pf->flags & I40E_FLAG_MDD_AUTO_RESET_VF) { + /* VF MDD event counters will be cleared by + * reset, so print the event prior to reset. + */ + i40e_print_vf_rx_mdd_event(pf, vf); + i40e_vc_notify_vf_reset(vf); + /* Allow VF to process pending reset notification */ + msleep(20); + + i40e_reset_vf(vf, false); + } } } @@ -11249,6 +11304,8 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) reg |= I40E_PFINT_ICR0_ENA_MAL_DETECT_MASK; wr32(hw, I40E_PFINT_ICR0_ENA, reg); i40e_flush(hw); + + i40e_print_vfs_mdd_events(pf); } /** diff --git a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h index d75ba0a03169..dc127400ff1e 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h +++ b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h @@ -64,6 +64,8 @@ struct i40evf_channel { struct i40e_mdd_vf_events { u64 count; /* total count of Rx|Tx events */ + /* count number of the last printed event */ + u64 last_printed; }; /* VF information structure */ -- 2.31.1 _______________________________________________ Intel-wired-lan mailing list Intel-wired-lan@osuosl.org https://lists.osuosl.org/mailman/listinfo/intel-wired-lan ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [Intel-wired-lan] [PATCH iwl-next v1 2/2] i40e: add mdd-auto-reset-vf private flag 2023-08-11 12:46 ` [Intel-wired-lan] [PATCH iwl-next v1 2/2] i40e: add mdd-auto-reset-vf private flag Jan Sokolowski @ 2023-08-14 22:28 ` Tony Nguyen 2023-08-15 16:20 ` Tony Nguyen 2023-08-17 12:35 ` kernel test robot 1 sibling, 1 reply; 5+ messages in thread From: Tony Nguyen @ 2023-08-14 22:28 UTC (permalink / raw) To: Jan Sokolowski, intel-wired-lan On 8/11/2023 5:46 AM, Jan Sokolowski wrote: #1 these patches are missing a cover letter. > Since VF RX MDD events should disable the queue, add ethtool > private flag mdd-auto-reset-vf to configure VF reset > to re-enable the queue. This can be used by a system's administrator > to select the desired level of security in running VF's. #2 private flags are no longer allowed and/or highly discouraged. This should be RFC'd to netdev first to see if they are open to accepting this private flag. > Signed-off-by: Jan Sokolowski <jan.sokolowski@intel.com> > --- > drivers/net/ethernet/intel/i40e/i40e.h | 2 +- > .../net/ethernet/intel/i40e/i40e_ethtool.c | 1 + > drivers/net/ethernet/intel/i40e/i40e_main.c | 75 ++++++++++++++++--- > .../ethernet/intel/i40e/i40e_virtchnl_pf.h | 2 + > 4 files changed, 70 insertions(+), 10 deletions(-) > > diff --git a/drivers/net/ethernet/intel/i40e/i40e.h b/drivers/net/ethernet/intel/i40e/i40e.h > index 6e310a539467..72bd45c4f9ba 100644 > --- a/drivers/net/ethernet/intel/i40e/i40e.h > +++ b/drivers/net/ethernet/intel/i40e/i40e.h > @@ -603,7 +603,7 @@ struct i40e_pf { > * in abilities field of i40e_aq_set_phy_config structure > */ > #define I40E_FLAG_TOTAL_PORT_SHUTDOWN_ENABLED BIT(27) > - > +#define I40E_FLAG_MDD_AUTO_RESET_VF BIT(28) > struct i40e_client_instance *cinst; > bool stat_offsets_loaded; > struct i40e_hw_port_stats stats; > diff --git a/drivers/net/ethernet/intel/i40e/i40e_ethtool.c b/drivers/net/ethernet/intel/i40e/i40e_ethtool.c > index afc4fa8c66af..54bdf477bcd6 100644 > --- a/drivers/net/ethernet/intel/i40e/i40e_ethtool.c > +++ b/drivers/net/ethernet/intel/i40e/i40e_ethtool.c > @@ -457,6 +457,7 @@ static const struct i40e_priv_flags i40e_gstrings_priv_flags[] = { > I40E_PRIV_FLAG("base-r-fec", I40E_FLAG_BASE_R_FEC, 0), > I40E_PRIV_FLAG("vf-vlan-pruning", > I40E_FLAG_VF_VLAN_PRUNING, 0), > + I40E_PRIV_FLAG("mdd-auto-reset-vf", I40E_FLAG_MDD_AUTO_RESET_VF, 0), > }; > > #define I40E_PRIV_FLAGS_STR_LEN ARRAY_SIZE(i40e_gstrings_priv_flags) > diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c > index f346ba6ef7bf..6c483f7dd279 100644 > --- a/drivers/net/ethernet/intel/i40e/i40e_main.c > +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c > @@ -11153,6 +11153,52 @@ static void i40e_handle_reset_warning(struct i40e_pf *pf, bool lock_acquired) > i40e_reset_and_rebuild(pf, false, lock_acquired); > } > > +/** > + * i40e_print_vf_rx_mdd_event - print VF Rx malicious driver detect event > + * @vf: pointer to the VF structure > + */ > +static void i40e_print_vf_rx_mdd_event(struct i40e_pf *pf, struct i40e_vf *vf) > +{ > + dev_err_ratelimited(&pf->pdev->dev, "%lld Rx Malicious Driver Detection events detected on PF %d VF %d MAC %pm. mdd-auto-reset-vfs=%s\n", > + vf->mdd_rx_events.count, > + pf->hw.pf_id, > + vf->vf_id, > + vf->default_lan_addr.addr, > + (I40E_FLAG_MDD_AUTO_RESET_VF & pf->flags) ? "on" : "off"); > +} > + > +/** > + * i40e_print_vfs_mdd_events - print VFs malicious driver detect event > + * @pf: pointer to the PF structure > + * > + * Called from i40e_handle_mdd_event to rate limit and print VFs MDD events. > + */ > +static void i40e_print_vfs_mdd_events(struct i40e_pf *pf) > +{ > + struct i40e_vf *vf; > + unsigned int i; > + > + for (i = 0; i < pf->num_alloc_vfs; i++) { > + vf = &pf->vf[i]; > + /* only print Rx MDD event message if there are new events */ > + if (vf->mdd_rx_events.count != vf->mdd_rx_events.last_printed) { > + vf->mdd_rx_events.last_printed = vf->mdd_rx_events.count; > + i40e_print_vf_rx_mdd_event(pf, vf); > + } > + > + /* only print Tx MDD event message if there are new events */ > + if (vf->mdd_tx_events.count != vf->mdd_tx_events.last_printed) { > + vf->mdd_tx_events.last_printed = vf->mdd_tx_events.count; > + dev_err_ratelimited(&pf->pdev->dev, "%lld Tx Malicious Driver Detection events detected on PF %d VF %d MAC %pM.\n", > + vf->mdd_tx_events.count, > + pf->hw.pf_id, > + vf->vf_id, > + vf->default_lan_addr.addr); > + } > + } > +} > + > + > /** > * i40e_handle_mdd_event > * @pf: pointer to the PF structure > @@ -11167,8 +11213,13 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) > u32 reg; > int i; > > - if (!test_bit(__I40E_MDD_EVENT_PENDING, pf->state)) > + if (!test_and_clear_bit(__I40E_MDD_EVENT_PENDING, pf->state)) { > + /* Since the VF MDD event logging is rate limited, check if > + * there are pending MDD events. > + */ > + i40e_print_vfs_mdd_events(pf); > return; > + } > > /* find what triggered the MDD event */ > reg = rd32(hw, I40E_GL_MDET_TX); > @@ -11224,10 +11275,6 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) > if (reg & I40E_VP_MDET_TX_VALID_MASK) { > wr32(hw, I40E_VP_MDET_TX(i), 0xFFFF); > vf->mdd_tx_events.count++; > - dev_info(&pf->pdev->dev, "TX driver issue detected on VF %d\n", > - i); > - dev_info(&pf->pdev->dev, > - "Use PF Control I/F to re-enable the VF\n"); > set_bit(I40E_VF_STATE_DISABLED, &vf->vf_states); > } > > @@ -11235,11 +11282,19 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) > if (reg & I40E_VP_MDET_RX_VALID_MASK) { > wr32(hw, I40E_VP_MDET_RX(i), 0xFFFF); > vf->mdd_rx_events.count++; > - dev_info(&pf->pdev->dev, "RX driver issue detected on VF %d\n", > - i); > - dev_info(&pf->pdev->dev, > - "Use PF Control I/F to re-enable the VF\n"); > set_bit(I40E_VF_STATE_DISABLED, &vf->vf_states); > + > + if (pf->flags & I40E_FLAG_MDD_AUTO_RESET_VF) { > + /* VF MDD event counters will be cleared by > + * reset, so print the event prior to reset. > + */ > + i40e_print_vf_rx_mdd_event(pf, vf); > + i40e_vc_notify_vf_reset(vf); > + /* Allow VF to process pending reset notification */ > + msleep(20); > + > + i40e_reset_vf(vf, false); > + } > } > } > > @@ -11249,6 +11304,8 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) > reg |= I40E_PFINT_ICR0_ENA_MAL_DETECT_MASK; > wr32(hw, I40E_PFINT_ICR0_ENA, reg); > i40e_flush(hw); > + > + i40e_print_vfs_mdd_events(pf); > } > > /** > diff --git a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h > index d75ba0a03169..dc127400ff1e 100644 > --- a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h > +++ b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h > @@ -64,6 +64,8 @@ struct i40evf_channel { > > struct i40e_mdd_vf_events { > u64 count; /* total count of Rx|Tx events */ > + /* count number of the last printed event */ > + u64 last_printed; > }; > > /* VF information structure */ _______________________________________________ Intel-wired-lan mailing list Intel-wired-lan@osuosl.org https://lists.osuosl.org/mailman/listinfo/intel-wired-lan ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Intel-wired-lan] [PATCH iwl-next v1 2/2] i40e: add mdd-auto-reset-vf private flag 2023-08-14 22:28 ` Tony Nguyen @ 2023-08-15 16:20 ` Tony Nguyen 0 siblings, 0 replies; 5+ messages in thread From: Tony Nguyen @ 2023-08-15 16:20 UTC (permalink / raw) To: Jan Sokolowski, intel-wired-lan On 8/14/2023 3:28 PM, Tony Nguyen wrote: ... > #2 private flags are no longer allowed and/or highly discouraged. This > should be RFC'd to netdev first to see if they are open to accepting > this private flag. This is from netdev yesterday: https://lore.kernel.org/netdev/20230814192231.12e0c290@kernel.org/ Acceptance of a private flag is highly unlikely. _______________________________________________ Intel-wired-lan mailing list Intel-wired-lan@osuosl.org https://lists.osuosl.org/mailman/listinfo/intel-wired-lan ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Intel-wired-lan] [PATCH iwl-next v1 2/2] i40e: add mdd-auto-reset-vf private flag 2023-08-11 12:46 ` [Intel-wired-lan] [PATCH iwl-next v1 2/2] i40e: add mdd-auto-reset-vf private flag Jan Sokolowski 2023-08-14 22:28 ` Tony Nguyen @ 2023-08-17 12:35 ` kernel test robot 1 sibling, 0 replies; 5+ messages in thread From: kernel test robot @ 2023-08-17 12:35 UTC (permalink / raw) To: Jan Sokolowski, intel-wired-lan; +Cc: oe-kbuild-all Hi Jan, kernel test robot noticed the following build warnings: [auto build test WARNING on tnguy-next-queue/dev-queue] url: https://github.com/intel-lab-lkp/linux/commits/Jan-Sokolowski/i40e-add-mdd-auto-reset-vf-private-flag/20230811-204507 base: https://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue.git dev-queue patch link: https://lore.kernel.org/r/20230811124648.3368659-2-jan.sokolowski%40intel.com patch subject: [Intel-wired-lan] [PATCH iwl-next v1 2/2] i40e: add mdd-auto-reset-vf private flag config: x86_64-rhel-8.3-ltp (https://download.01.org/0day-ci/archive/20230817/202308171945.ER5x9p9W-lkp@intel.com/config) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce: (https://download.01.org/0day-ci/archive/20230817/202308171945.ER5x9p9W-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202308171945.ER5x9p9W-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/net/ethernet/intel/i40e/i40e_main.c:11162: warning: Function parameter or member 'pf' not described in 'i40e_print_vf_rx_mdd_event' vim +11162 drivers/net/ethernet/intel/i40e/i40e_main.c 11156 11157 /** 11158 * i40e_print_vf_rx_mdd_event - print VF Rx malicious driver detect event 11159 * @vf: pointer to the VF structure 11160 */ 11161 static void i40e_print_vf_rx_mdd_event(struct i40e_pf *pf, struct i40e_vf *vf) 11162 { 11163 dev_err_ratelimited(&pf->pdev->dev, "%lld Rx Malicious Driver Detection events detected on PF %d VF %d MAC %pm. mdd-auto-reset-vfs=%s\n", 11164 vf->mdd_rx_events.count, 11165 pf->hw.pf_id, 11166 vf->vf_id, 11167 vf->default_lan_addr.addr, 11168 (I40E_FLAG_MDD_AUTO_RESET_VF & pf->flags) ? "on" : "off"); 11169 } 11170 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki _______________________________________________ Intel-wired-lan mailing list Intel-wired-lan@osuosl.org https://lists.osuosl.org/mailman/listinfo/intel-wired-lan ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-08-17 12:35 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-08-11 12:46 [Intel-wired-lan] [PATCH iwl-next v1 1/2] i40e: Split VF MDD event statistics Jan Sokolowski 2023-08-11 12:46 ` [Intel-wired-lan] [PATCH iwl-next v1 2/2] i40e: add mdd-auto-reset-vf private flag Jan Sokolowski 2023-08-14 22:28 ` Tony Nguyen 2023-08-15 16:20 ` Tony Nguyen 2023-08-17 12:35 ` kernel test robot
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox