Looks good, just minor comment
> +static int
> +i40evf_reset_dev(struct rte_eth_dev *dev) {
> + struct i40e_adapter *adapter =
> + I40E_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
> +
> + adapter->reset_flag = 1;
> + i40evf_store_before_reset(dev);
> +
> + i40evf_dev_close(dev);
> + PMD_DRV_LOG(DEBUG, "i40evf dev close complete");
> +
> + i40evf_dev_uninit(dev);
> + PMD_DRV_LOG(DEBUG, "i40evf dev detached");
> +
> + memset(dev->data->dev_private, 0,
> + (uint64_t)&adapter->reset_flag - (uint64_t)adapter);
You can use offset() instead.