Hi Qiming, On 10/28/2016 5:18 AM, Qiming Yang wrote: > If VF device is used as slave of a bond device, it will be polled > periodically through alarm. Interrupt is involved here. And then > VF will send I40E_VIRTCHNL_OP_GET_LINK_STAT message to > PF to query the status. The response is handled by interrupt > callback. Interrupt is involved here again. That's why bond > device cannot bring up. > > This patch removes I40E_VIRTCHNL_OP_GET_LINK_STAT > message. Link status in VF driver will be updated when PF driver > notify it, and VF stores this link status locally. VF driver just > returns the local status when being required. > > Fixes: 4861cde46116 ("i40e: new poll mode driver") > > Signed-off-by: Qiming Yang <qiming.yang at intel.com> > ---
<...> > static void > +i40e_notify_all_vfs_link_status(struct rte_eth_dev *dev) > +{ > + struct i40e_pf *pf = I40E_DEV_PRIVATE_TO_PF(dev->data->dev_private); > + struct i40e_virtchnl_pf_event event; > + int i; > + > + event.event = I40E_VIRTCHNL_EVENT_LINK_CHANGE; > + event.event_data.link_event.link_status = > + dev->data->dev_link.link_status; > + event.event_data.link_event.link_speed = > + dev->data->dev_link.link_speed; This gives a compilation error with icc [1], casting to enum will be enough to fix I guess. [1] .../drivers/net/i40e/i40e_ethdev.c(5453): error #188: enumerated type mixed with another type event.event_data.link_event.link_speed = ^ <...> > diff --git a/drivers/net/i40e/i40e_pf.c b/drivers/net/i40e/i40e_pf.c > index d5b2d45..350f6a0 100644 <...> > > +static void > +i40e_notify_vf_link_status(struct rte_eth_dev *dev, struct i40e_pf_vf *vf) > +{ > + struct i40e_virtchnl_pf_event event; > + > + event.event = I40E_VIRTCHNL_EVENT_LINK_CHANGE; > + event.event_data.link_event.link_status = > + dev->data->dev_link.link_status; > + event.event_data.link_event.link_speed = > + dev->data->dev_link.link_speed; Same error here: .../drivers/net/i40e/i40e_pf.c(908): error #188: enumerated type mixed with another type event.event_data.link_event.link_speed = ^ And while sending a new version of the patch, can you please: 1- CC the maintainers 2- Patchset already acked by Jingjing, keep the ack in the patches. Thanks, ferruh