| #
cc0151b3 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: add virtio-user features ops
This patch introduces new callbacks for getting and setting Virtio features, and implements them for the different backend types.
Signed-off-by: Maxime Coqu
net/virtio: add virtio-user features ops
This patch introduces new callbacks for getting and setting Virtio features, and implements them for the different backend types.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
df968842 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: move vring alignment to generic header
This patch moves vring alignment define to the generic Virtio header.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Che
net/virtio: move vring alignment to generic header
This patch moves vring alignment define to the generic Virtio header.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
| #
6a504290 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: make interrupt handling more generic
This patch aims at isolating MSIX notion into PCI layer.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: David Marchand <da
net/virtio: make interrupt handling more generic
This patch aims at isolating MSIX notion into PCI layer.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
| #
9328e105 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: move config definitions to generic header
This patch moves config and status definitions from the PCI header to the generic one.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.c
net/virtio: move config definitions to generic header
This patch moves config and status definitions from the PCI header to the generic one.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
b4f9a45a |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: move features definition to generic header
This patch moves all the Virtio definition to the generic header. It also renames some helpers to no more reference PCI.
Signed-off-by: Maxime
net/virtio: move features definition to generic header
This patch moves all the Virtio definition to the generic header. It also renames some helpers to no more reference PCI.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
f8b60756 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: introduce generic virtio header
This patch moves virtio_hw and virtio callbacks into a generic virtio header, now that they have been curated from PCI references.
Signed-off-by: Maxime
net/virtio: introduce generic virtio header
This patch moves virtio_hw and virtio callbacks into a generic virtio header, now that they have been curated from PCI references.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
c4fa9cc7 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: remove bus type enum
Bus type awareness at the generic ethdev level is no more needed as previous patches have made it bus-agnostic.
This patch removes it from struct virtio_hw.
Signed
net/virtio: remove bus type enum
Bus type awareness at the generic ethdev level is no more needed as previous patches have made it bus-agnostic.
This patch removes it from struct virtio_hw.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
| #
cbb135b3 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: validate features at bus level
This patch provides a new callback for the bus type to validate negotiated features are compatible with it.
Only user for now is PCI modern bus type, whic
net/virtio: validate features at bus level
This patch provides a new callback for the bus type to validate negotiated features are compatible with it.
Only user for now is PCI modern bus type, which implies that the device supports Virtio 1.0+.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
f12908c8 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: add callback for device closing
This patch introduces a new callback for device closing, making virtio_dev_close() bus-agnostic.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.c
net/virtio: add callback for device closing
This patch introduces a new callback for device closing, making virtio_dev_close() bus-agnostic.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
| #
17043a29 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: force IOVA as VA mode for virtio-user
At least Vhost-user backend of Virtio-user PMD requires IOVA as VA mode. Until now, it was implemented as a hack by forcing to use mbuf's buf_addr f
net/virtio: force IOVA as VA mode for virtio-user
At least Vhost-user backend of Virtio-user PMD requires IOVA as VA mode. Until now, it was implemented as a hack by forcing to use mbuf's buf_addr field instead of buf_iova.
This patch removes all this logic and just fails probing if IOVA as VA mode is not selected. It simplifies the code overall, and removes some bus-specific logic from generic virtio_ethdev.c.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
65832c82 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: refactor virtio-user device
This patch moves the virtio_hw structure into the virtio_user_dev structure, with the goal of making virtio_hw bus-agnostic.
Signed-off-by: Maxime Coquelin <
net/virtio: refactor virtio-user device
This patch moves the virtio_hw structure into the virtio_user_dev structure, with the goal of making virtio_hw bus-agnostic.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
0cd63b6f |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: introduce virtio bus type
This patch is preliminary work for introducing a bus layer in Virtio PMD, in order to improve Virtio-user integration.
A new bus type is added to provide a uni
net/virtio: introduce virtio bus type
This patch is preliminary work for introducing a bus layer in Virtio PMD, in order to improve Virtio-user integration.
A new bus type is added to provide a unified way to distinguish which bus type is used (PCI modern, PCI legacy or Virtio-user).
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
721dbeb3 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: fix getting old status on reconnect
This patch fixes getting reset status from the restarted vhost-user backend in case of reconnection, instead of the status at the time of the disconne
net/virtio: fix getting old status on reconnect
This patch fixes getting reset status from the restarted vhost-user backend in case of reconnection, instead of the status at the time of the disconnection.
This issue was not spotted earlier because Vhost-user protocol status feature was disabled in server mode.
Fixes: 47235f16505f ("net/virtio-user: set status on socket reconnect") Cc: stable@dpdk.org
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
df96fd0d |
| 29-Jan-2021 |
Bruce Richardson <bruce.richardson@intel.com> |
ethdev: make driver-only headers private
The rte_ethdev_driver.h, rte_ethdev_vdev.h and rte_ethdev_pci.h files are for drivers only and should be a private to DPDK and not installed.
Signed-off-by:
ethdev: make driver-only headers private
The rte_ethdev_driver.h, rte_ethdev_vdev.h and rte_ethdev_pci.h files are for drivers only and should be a private to DPDK and not installed.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Acked-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Steven Webster <steven.webster@windriver.com>
show more ...
|
|
Revision tags: v21.02-rc1, v20.11, v20.11-rc5 |
|
| #
9ef38ddb |
| 17-Nov-2020 |
Joyce Kong <joyce.kong@arm.com> |
net/virtio: add election for packed vector NEON path
Add NEON vectorized path selection logic. Default setting comes from vectorized devarg, then checks each criteria.
Packed ring vectorized neon p
net/virtio: add election for packed vector NEON path
Add NEON vectorized path selection logic. Default setting comes from vectorized devarg, then checks each criteria.
Packed ring vectorized neon path need: NEON is supported by compiler and host VERSION_1 and IN_ORDER features are negotiated mergeable feature is not negotiated LRO offloading is disabled
Signed-off-by: Joyce Kong <joyce.kong@arm.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v20.11-rc4, v20.11-rc3, v20.11-rc2 |
|
| #
47235f16 |
| 26-Oct-2020 |
Adrian Moreno <amorenoz@redhat.com> |
net/virtio-user: set status on socket reconnect
Newer vhost-user backends will rely on SET_STATUS to start the device so this required to support them.
Fixes: 57912824615f ("net/virtio-user: suppor
net/virtio-user: set status on socket reconnect
Newer vhost-user backends will rely on SET_STATUS to start the device so this required to support them.
Fixes: 57912824615f ("net/virtio-user: support vhost status setting") Cc: stable@dpdk.org
Signed-off-by: Adrian Moreno <amorenoz@redhat.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
| #
13e8bf89 |
| 26-Oct-2020 |
Adrian Moreno <amorenoz@redhat.com> |
net/virtio-user: do not assume vhost status feature
There are some status reads and updates that need to happen before the protocol features are negotiated. Therefore, assuming the backend does supp
net/virtio-user: do not assume vhost status feature
There are some status reads and updates that need to happen before the protocol features are negotiated. Therefore, assuming the backend does support this feature can lead to failures.
On server mode, do not assume the backend supports VHOST_USER_PROTOCOL_F_STATUS. Activate it back on reconnection and clear it on disconnection.
Fixes: 57912824615f ("net/virtio-user: support vhost status setting") Cc: stable@dpdk.org
Signed-off-by: Adrian Moreno <amorenoz@redhat.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
| #
d7e10ea9 |
| 26-Oct-2020 |
Adrian Moreno <amorenoz@redhat.com> |
net/virtio-user: lock-protect status updates
In order to safely set and get the device status from different threads (e.g: interrupt handlers).
Signed-off-by: Adrian Moreno <amorenoz@redhat.com> Re
net/virtio-user: lock-protect status updates
In order to safely set and get the device status from different threads (e.g: interrupt handlers).
Signed-off-by: Adrian Moreno <amorenoz@redhat.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
| #
b0395dc8 |
| 26-Oct-2020 |
Adrian Moreno <amorenoz@redhat.com> |
net/virtio-user: fix backend selection if stat fails
If stat fails because the file does not exist, it means that the backend must be vhost-user in server mode.
Also, log the detected backend type.
net/virtio-user: fix backend selection if stat fails
If stat fails because the file does not exist, it means that the backend must be vhost-user in server mode.
Also, log the detected backend type.
Bugzilla ID: 559 Fixes: f908b22ea47a ("net/virtio: move backend type selection to ethdev") Cc: stable@dpdk.org
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Acked-by: Kevin Traynor <ktraynor@redhat.com> Signed-off-by: Adrian Moreno <amorenoz@redhat.com>
show more ...
|
|
Revision tags: v20.11-rc1 |
|
| #
8a5a0aad |
| 16-Oct-2020 |
Thomas Monjalon <thomas@monjalon.net> |
ethdev: allow close function to return an error
The API function rte_eth_dev_close() was returning void. The return type is changed to int for notifying of errors.
If an error happens during a clos
ethdev: allow close function to return an error
The API function rte_eth_dev_close() was returning void. The return type is changed to int for notifying of errors.
If an error happens during a close operation, the status of the port is undefined, a maximum of resources having been freed.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Reviewed-by: Liron Himi <lironh@marvell.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
show more ...
|
| #
844e4683 |
| 29-Sep-2020 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: split virtio-user start
Move feature bit settings in device start out as an standalone function, so that feature bit could be negotiated at device feature_ok status.
Signed-off-by: Maxi
net/virtio: split virtio-user start
Move feature bit settings in device start out as an standalone function, so that feature bit could be negotiated at device feature_ok status.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
7d62bf6f |
| 29-Sep-2020 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: introduce vhost-vDPA backend type
Backend type is determined by checking char-device major numbers
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Signed-off-by: Adrian More
net/virtio: introduce vhost-vDPA backend type
Backend type is determined by checking char-device major numbers
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Signed-off-by: Adrian Moreno <amorenoz@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
f908b22e |
| 29-Sep-2020 |
Adrian Moreno <amorenoz@redhat.com> |
net/virtio: move backend type selection to ethdev
This is a preparation patch with no functional change.
Use an enum instead of a boolean for the backend type. Move the detection logic to the ethde
net/virtio: move backend type selection to ethdev
This is a preparation patch with no functional change.
Use an enum instead of a boolean for the backend type. Move the detection logic to the ethdev layer (where it is needed for the first time). The virtio_user_dev stores the backend type in the virtio_user_dev struct so the type is only determined once
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Signed-off-by: Adrian Moreno <amorenoz@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
86e71eb2 |
| 29-Sep-2020 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: introduce DMA ops
Add DMA map/unmap callbacks to the virtio_user pmd, which could be leveraged by vdev bus driver to map memory for backend devices with DMA capability.
Signed-off-by: M
net/virtio: introduce DMA ops
Add DMA map/unmap callbacks to the virtio_user pmd, which could be leveraged by vdev bus driver to map memory for backend devices with DMA capability.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
|
Revision tags: v20.08, v20.08-rc4 |
|
| #
0b0dc66c |
| 05-Aug-2020 |
Adrian Moreno <amorenoz@redhat.com> |
net/virtio-user: support vhost status getting
This patch adds support for VHOST_USER_GET_STATUS request.
Only vhost-user backed is supported for now
Signed-off-by: Adrian Moreno <amorenoz@redhat.c
net/virtio-user: support vhost status getting
This patch adds support for VHOST_USER_GET_STATUS request.
Only vhost-user backed is supported for now
Signed-off-by: Adrian Moreno <amorenoz@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|