This series moves the network device simulator in a new module
(vdpa_sim_net) and leaves the generic functions in the vdpa_sim core
module, allowing the possibility to add new vDPA device simulators.
For now I removed the vdpa-blk simulator patches, since I'm still working
on them and debugging the iotlb issues.
Thanks to Max that started this work! I took his patches and extended a bit.
As Jason suggested, I simplified the "vdpa: split vdpasim to core and
net modules" patch, moving some changes out in small patches.
@Max: I put your Co-developed-by and Signed-off-by tags on these patches,
let me know if it is okay for you, or if there is a better way to give
credit to your work!
v1: https://lists.linuxfoundation.org/pipermail/virtualization/2020-November/050677.html
v2:
- moved most of the patches before the vdpa-core/net split [Jason]
- removed unnecessary headers
- removed 'default n' in Kconfig entries [Jason]
- added VDPASIM_IOTLB_LIMIT macro [Jason]
- set vringh notify callback [Jason]
- used VIRTIO terminology for in_iov/out_iov [Stefan]
- simplified "vdpa: split vdpasim to core and net modules" patch,
moving some changes out in small patches
- left batch_mapping module parameter in the core [Jason]
Max Gurtovoy (2):
vdpa_sim: remove hard-coded virtq count
vdpa: split vdpasim to core and net modules
Stefano Garzarella (15):
vdpa: remove unnecessary 'default n' in Kconfig entries
vdpa_sim: remove unnecessary headers inclusion
vdpa_sim: remove the limit of IOTLB entries
vdpa_sim: rename vdpasim_config_ops variables
vdpa_sim: add struct vdpasim_dev_attr for device attributes
vdpa_sim: add device id field in vdpasim_dev_attr
vdpa_sim: add supported_features field in vdpasim_dev_attr
vdpa_sim: add work_fn in vdpasim_dev_attr
vdpa_sim: store parsed MAC address in a buffer
vdpa_sim: make 'config' generic and usable for any device type
vdpa_sim: add get_config callback in vdpasim_dev_attr
vdpa_sim: set vringh notify callback
vdpa_sim: use kvmalloc to allocate vdpasim->buffer
vdpa_sim: make vdpasim->buffer size configurable
vdpa_sim: split vdpasim_virtqueue's iov field in out_iov and in_iov