|
Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1, v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2, v21.11-rc1 |
|
| #
d61138d4 |
| 22-Oct-2021 |
Harman Kalra <[email protected]> |
drivers: remove direct access to interrupt handle
Removing direct access to interrupt handle structure fields, rather use respective get set APIs for the same. Making changes to all the drivers acce
drivers: remove direct access to interrupt handle
Removing direct access to interrupt handle structure fields, rather use respective get set APIs for the same. Making changes to all the drivers access the interrupt handle fields.
Signed-off-by: Harman Kalra <[email protected]> Acked-by: Hyong Youb Kim <[email protected]> Signed-off-by: David Marchand <[email protected]> Tested-by: Raslan Darawsheh <[email protected]>
show more ...
|
| #
f3854eba |
| 16-Sep-2021 |
Thomas Monjalon <[email protected]> |
net/virtio: remove blank lines in log
The macros PMD_*_LOG already include the line feed character. Redundant \n are removed.
Signed-off-by: Thomas Monjalon <[email protected]> Reviewed-by: David
net/virtio: remove blank lines in log
The macros PMD_*_LOG already include the line feed character. Redundant \n are removed.
Signed-off-by: Thomas Monjalon <[email protected]> Reviewed-by: David Marchand <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
848e93d9 |
| 31-Aug-2021 |
David Marchand <[email protected]> |
net/virtio-user: fix Rx interrupts with multi-queue
The callfds[] array stores eventfds sequentially for Rx and Tx vq.
Fixes: 3d4fb6fd2505 ("net/virtio-user: support Rx interrupt") Cc: stable@dpdk.
net/virtio-user: fix Rx interrupts with multi-queue
The callfds[] array stores eventfds sequentially for Rx and Tx vq.
Fixes: 3d4fb6fd2505 ("net/virtio-user: support Rx interrupt") Cc: [email protected]
Signed-off-by: David Marchand <[email protected]> Reviewed-by: Maxime Coquelin <[email protected]>
show more ...
|
|
Revision tags: v21.08, v21.08-rc4, v21.08-rc3 |
|
| #
7b919515 |
| 26-Jul-2021 |
Gaoxiang Liu <[email protected]> |
net/virtio: fix interrupt handle leak
Free memory of interrupt handle in virtio_user_dev_uninit() to avoid memory leak. when virtio user dev closes, memory of interrupt handle is not freed that is a
net/virtio: fix interrupt handle leak
Free memory of interrupt handle in virtio_user_dev_uninit() to avoid memory leak. when virtio user dev closes, memory of interrupt handle is not freed that is allocated in virtio_user_fill_intr_handle().
Fixes: 3d4fb6fd2505 ("net/virtio-user: support Rx interrupt") Cc: [email protected]
Signed-off-by: Gaoxiang Liu <[email protected]> Reviewed-by: Chenbo Xia <[email protected]> Reviewed-by: Maxime Coquelin <[email protected]>
show more ...
|
|
Revision tags: v21.08-rc2, v21.08-rc1 |
|
| #
c995b005 |
| 17-Jun-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: add MAC device config getter and setter
This patch uses the new device config ops to get and set the MAC address if supported.
If a valid MAC address is passed as devarg of the Virtio-u
net/virtio: add MAC device config getter and setter
This patch uses the new device config ops to get and set the MAC address if supported.
If a valid MAC address is passed as devarg of the Virtio-user PMD, the driver will try to store it in the device config space. Otherwise the one provided in the device config space will be used, if available.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
f078c2f0 |
| 17-Jun-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: keep device and frontend features separated
This patch is preliminary rework to add support for getting and setting device's config space.
In order to get or set a device config such as
net/virtio: keep device and frontend features separated
This patch is preliminary rework to add support for getting and setting device's config space.
In order to get or set a device config such as its MAC address, we need to know whether the device itself support the feature, or if it is emulated by the frontend.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
|
Revision tags: v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2, v21.05-rc1 |
|
| #
23abee9d |
| 17-Mar-2021 |
Ilya Maximets <[email protected]> |
net/virtio: fix interrupt unregistering for listening socket
virtio_user_dev_server_reconnect() is typically called from the interrupt context while checking the link state:
vhost_user_update_lin
net/virtio: fix interrupt unregistering for listening socket
virtio_user_dev_server_reconnect() is typically called from the interrupt context while checking the link state:
vhost_user_update_link_state() --> virtio_user_dev_server_reconnect()
Under this conditions callback unregistering always fails. This means that listenfd is never unregistered and continue to trigger interrupts. For example, if second client will try to connect to the same socket, the server will receive interrupts infinitely because it will not accept them while listen fd is readable and generates epoll events.
Fix that by moving reconfiguration of interrupts out of the interrupt context to alarm handler.
'virtio_user_dev_delayed_handler' renamed to 'virtio_user_dev_delayed_disconnect_handler' to better reflect its purpose.
Additionally improved error logging around interrupt management.
Fixes: bd8f50a45d0f ("net/virtio-user: support server mode") Cc: [email protected]
Signed-off-by: Ilya Maximets <[email protected]> Reviewed-by: Maxime Coquelin <[email protected]>
show more ...
|
|
Revision tags: v21.02, v21.02-rc4, v21.02-rc3 |
|
| #
6564ddcd |
| 01-Feb-2021 |
David Marchand <[email protected]> |
net/virtio: remove duplicated port ID from virtio-user
The private virtio_user_dev structure embeds a virtio_hw which itself contains the ethdev port_id. Make use of it and remove the duplicate port
net/virtio: remove duplicated port ID from virtio-user
The private virtio_user_dev structure embeds a virtio_hw which itself contains the ethdev port_id. Make use of it and remove the duplicate port_id field.
Signed-off-by: David Marchand <[email protected]> Reviewed-by: Maxime Coquelin <[email protected]>
show more ...
|
| #
3169550f |
| 16-Mar-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: remove reference to virtqueue in vrings
Vrings are part of the virtqueues, so we don't need to have a pointer to it in Vrings descriptions.
Instead, let's just subtract from its offset
net/virtio: remove reference to virtqueue in vrings
Vrings are part of the virtqueues, so we don't need to have a pointer to it in Vrings descriptions.
Instead, let's just subtract from its offset to calculate virtqueue address.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]> Reviewed-by: David Marchand <[email protected]> Tested-by: Balazs Nemeth <[email protected]>
show more ...
|
|
Revision tags: v21.02-rc2 |
|
| #
2e4c1b50 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: handle virtio-user setup failure properly
This patch fixes virtio_user_dev_setup() error path, by cleaning all resources it allocates. It introduces virtio_user_dev_uninit_notify() that
net/virtio: handle virtio-user setup failure properly
This patch fixes virtio_user_dev_setup() error path, by cleaning all resources it allocates. It introduces virtio_user_dev_uninit_notify() that cleans all open FDs. It implies assigning all FDs to -1 at init time.
With these changes done, virtio_user_dev_init_notify() can be simplified.
Suggested-by: Adrian Moreno <[email protected]> Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
86388a3a |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: move vhost-kernel data to its backend
As done earlier for Vhost-user, this patch moves the Vhost-Kernel specific data to its backend file.
Signed-off-by: Maxime Coquelin <maxime.coqueli
net/virtio: move vhost-kernel data to its backend
As done earlier for Vhost-user, this patch moves the Vhost-Kernel specific data to its backend file.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
94973531 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: move vhost-user specifics to its backend
This patch moves all the Vhost-user backend specific logic like Vhost FD, listen FD and interrupt handling to the vhost-user backend implementati
net/virtio: move vhost-user specifics to its backend
This patch moves all the Vhost-user backend specific logic like Vhost FD, listen FD and interrupt handling to the vhost-user backend implementation.
In order to achieve that, new ops are created to update the link status, disconnect and reconnect the server, and fetch the link state interrupt FD.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
748e5ea5 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: introduce backend data
The goal of this patch is to introduce backend-specific data in order to better isolate what is backend-specific from what is generic to Virtio-user.
For now, onl
net/virtio: introduce backend data
The goal of this patch is to introduce backend-specific data in order to better isolate what is backend-specific from what is generic to Virtio-user.
For now, only Vhost-user protocol features are moved to Vhost-user backend data.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
5b75b63c |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: move protocol features to vhost-user
Since only protocol features are specific to Vhost-user backend, this patch moves all related code to Vhost-user file.
Signed-off-by: Maxime Coqueli
net/virtio: move protocol features to vhost-user
Since only protocol features are specific to Vhost-user backend, this patch moves all related code to Vhost-user file.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
9af79db2 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: make server mode blocking
This patch makes the Vhost-user backend server mode blocking at init, waiting for the client connection.
The goal is to make the driver more reliable, as witho
net/virtio: make server mode blocking
This patch makes the Vhost-user backend server mode blocking at init, waiting for the client connection.
The goal is to make the driver more reliable, as without waiting for client connection, the Virtio driver has to assume the Vhost-user backend will support all the features it has advertized, which could lead to undefined behaviour.
For example, without this patch, if the user enables packed ring Virtio feature but the backend does not support it, the ring initialized by the driver will not be compatible with the backend.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
a3fb6b1d |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: improve virtio-user errors handling
This patch adds error logs and propagates errors reported by the backend. It also adds the device path in error logs to make it easier to distinguish
net/virtio: improve virtio-user errors handling
This patch adds error logs and propagates errors reported by the backend. It also adds the device path in error logs to make it easier to distinguish which device is facing the issue.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
8723c894 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: add virtio-user status ops
This patch introduces new callbacks to get and set the device status.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <che
net/virtio: add virtio-user status ops
This patch introduces new callbacks to get and set the device status.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
dc65db73 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: add virtio-user vring address ops
This patch introduces a new callback for setting vrings addresses.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia
net/virtio: add virtio-user vring address ops
This patch introduces a new callback for setting vrings addresses.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
ce399c36 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: add virtio-user vring file ops
This patch introduces new callbacks for setting vring files (kick and call).
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chen
net/virtio: add virtio-user vring file ops
This patch introduces new callbacks for setting vring files (kick and call).
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
ab9098d2 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: add virtio-user vring setting ops
This patch introduces new callbacks for setting and getting vring state.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenb
net/virtio: add virtio-user vring setting ops
This patch introduces new callbacks for setting and getting vring state.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
539d910c |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: add virtio-user memory tables ops
This patch implements a dedicated callback for preparing and sending memory table to the backends.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redh
net/virtio: add virtio-user memory tables ops
This patch implements a dedicated callback for preparing and sending memory table to the backends.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
6c251919 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: add virtio-user protocol features ops
This patch introduces new callbacks for getting and setting Vhost-user protocol features.
Signed-off-by: Maxime Coquelin <[email protected]
net/virtio: add virtio-user protocol features ops
This patch introduces new callbacks for getting and setting Vhost-user protocol features.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
cc0151b3 |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
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 <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
| #
06856cab |
| 26-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: add virtio-user ops to set owner
This patch implements a dedicated callback for sending owner request. All the requests will be converted that way so that backends other than Vhost-user
net/virtio: add virtio-user ops to set owner
This patch implements a dedicated callback for sending owner request. All the requests will be converted that way so that backends other than Vhost-user don't have to work around being it.
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|
|
Revision tags: v21.02-rc1 |
|
| #
a121f175 |
| 08-Jan-2021 |
Maxime Coquelin <[email protected]> |
net/virtio: fix memory init with vDPA backend
This patch fixes an overhead met with mlx5-vdpa Kernel driver, where for every page in the mapped area, all the memory tables gets updated. For example,
net/virtio: fix memory init with vDPA backend
This patch fixes an overhead met with mlx5-vdpa Kernel driver, where for every page in the mapped area, all the memory tables gets updated. For example, with 2MB hugepages, a single IOTLB_UPDATE for a 1GB region causes 512 memory updates on mlx5-vdpa side.
Using batching mode, the mlx5 driver will only trigger a single memory update for all the IOTLB updates that happen between the batch begin and batch end commands.
Fixes: 6b901437056e ("net/virtio: introduce vhost-vDPA backend") Cc: [email protected]
Signed-off-by: Maxime Coquelin <[email protected]> Reviewed-by: Chenbo Xia <[email protected]>
show more ...
|