This patch fixes the issue:
Testpmd crashed with Segmentation fault when setup tx queues on vf
Steps for reproduce:
- create one vf device from i40e driver
- bind vf device to igb_uio and start testpmd
With debugging tools, we saw the struct i40e_vf is cleared after
memcpy(&dev->data->dev_conf, dev_conf, sizeof(dev->data->dev_conf)) in
rte_eth_dev_configure, which should not happen, and the pointer to
i40e_vf isn't in the range of i40e_adapter.
The root cause is the dev_private_size in i40e virtual function driver
struct rte_i40evf_pmd was set incorrectly.
Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Tested-by: Marvin Liu <yong.liu@intel.com>
},
.eth_dev_init = i40evf_dev_init,
.eth_dev_uninit = i40evf_dev_uninit,
- .dev_private_size = sizeof(struct i40e_vf),
+ .dev_private_size = sizeof(struct i40e_adapter),
};
/*