|
Revision tags: v24.07-rc2, v24.07-rc1, v24.03, v24.03-rc4, v24.03-rc3, v24.03-rc2, v24.03-rc1, v23.11, v23.11-rc4, v23.11-rc3, v23.11-rc2, v23.11-rc1, v23.07, v23.07-rc4, v23.07-rc3, v23.07-rc2, v23.07-rc1, v23.03, v23.03-rc4, v23.03-rc3, v23.03-rc2, v23.03-rc1, v22.11, v22.11-rc4, v22.11-rc3, v22.11-rc2, v22.11-rc1 |
|
| #
72b452c5 |
| 27-Aug-2022 |
Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> |
eal: remove unneeded includes from a public header
Do not include <ctype.h>, <errno.h>, and <stdlib.h> from <rte_common.h>, because they are not used by this file. Include the needed headers directl
eal: remove unneeded includes from a public header
Do not include <ctype.h>, <errno.h>, and <stdlib.h> from <rte_common.h>, because they are not used by this file. Include the needed headers directly from the files that need them.
Signed-off-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
|
Revision tags: v22.07, v22.07-rc4, v22.07-rc3, v22.07-rc2, v22.07-rc1 |
|
| #
013b4c52 |
| 03-Jun-2022 |
Bruce Richardson <bruce.richardson@intel.com> |
replace zero-length arrays with flexible ones
This patch replaces instances of zero-sized arrays i.e. those at the end of structures with "[0]" with the more standard syntax of "[]". Replacement was
replace zero-length arrays with flexible ones
This patch replaces instances of zero-sized arrays i.e. those at the end of structures with "[0]" with the more standard syntax of "[]". Replacement was done using coccinelle script, with some revert and cleanup of whitespace afterwards.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Morten Brørup <mb@smartsharesystems.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
show more ...
|
|
Revision tags: v22.03, v22.03-rc4, v22.03-rc3 |
|
| #
666ff776 |
| 02-Mar-2022 |
Harold Huang <baymaxhuang@gmail.com> |
net/virtio: support NAPI when using vhost-net backend
In patch [1], NAPI has been supported in kernel tun driver to accelerate packet processing received from vhost-net. This will greatly improve th
net/virtio: support NAPI when using vhost-net backend
In patch [1], NAPI has been supported in kernel tun driver to accelerate packet processing received from vhost-net. This will greatly improve the throughput of the tap device in the vhost-net backend.
[1]: https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=fb3f903769e8
Signed-off-by: Harold Huang <baymaxhuang@gmail.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v22.03-rc2, v22.03-rc1, v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2, v21.11-rc1 |
|
| #
b72099be |
| 28-Sep-2021 |
David Marchand <david.marchand@redhat.com> |
net/virtio-user: fix init when using existing tap
When attaching to an existing mono queue tap, the virtio-user was not reporting that the virtio device was not properly initialised which prevented
net/virtio-user: fix init when using existing tap
When attaching to an existing mono queue tap, the virtio-user was not reporting that the virtio device was not properly initialised which prevented from starting the port later.
$ ip tuntap add test mode tap $ dpdk-testpmd --vdev \ net_virtio_user0,iface=test,path=/dev/vhost-net,queues=2 -- -i
... virtio_user_dev_init_mac(): (/dev/vhost-net) No valid MAC in devargs or device, use random vhost_kernel_open_tap(): TUNSETIFF failed: Invalid argument vhost_kernel_enable_queue_pair(): fail to open tap for vhost kernel virtio_user_start_device(): (/dev/vhost-net) Failed to start device ... Configuring Port 0 (socket 0) vhost_kernel_open_tap(): TUNSETIFF failed: Invalid argument vhost_kernel_enable_queue_pair(): fail to open tap for vhost kernel virtio_set_multiple_queues(): Multiqueue configured but send command failed, this is too late now... Fail to start port 0: Invalid argument Please stop the ports first Done
The virtio-user with vhost-kernel backend was going through a lot of complications to initialise tap fds only when using them.
For each qp enabled for the first time, a tapfd was created via TUNSETIFF with unneeded additional steps (see below) and then mapped to the right qp in the vhost-net backend. Unneeded steps (as long as it has been done once for the port): - tap features were queried while this is a constant on a running system, - the device name in DPDK was updated, - the mac address of the tap was set,
On subsequent qps state change, the vhost-net backend fd mapping was updated and the associated queue/tapfd were disabled/enabled via TUNSETQUEUE.
Now, this patch simplifies the whole logic by keeping all tapfds opened and in enabled state (from the tap point of view) at all time.
Unused ioctl defines are removed.
Tap features are validated earlier to fail initialisation asap. Tap name discovery and mac address configuration are moved when configuring qp 0.
To support attaching to mono queue tap, the virtio-user driver now tries to attach in multi queue first, then fallbacks to mono queue.
Finally (but this is more for consistency), VIRTIO_NET_F_MQ feature is exposed only if the underlying tap supports multi queue.
Signed-off-by: David Marchand <david.marchand@redhat.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2, v21.08-rc1 |
|
| #
cf412ff7 |
| 28-May-2021 |
Thierry Herbelot <thierry.herbelot@6wind.com> |
net/virtio: fix kernel set features for multi-queue device
Restore the original code, where VHOST_SET_FEATURES is applied to all vhostfds of the device.
Fixes: cc0151b34dee ("net/virtio: add virtio
net/virtio: fix kernel set features for multi-queue device
Restore the original code, where VHOST_SET_FEATURES is applied to all vhostfds of the device.
Fixes: cc0151b34dee ("net/virtio: add virtio-user features ops") Cc: stable@dpdk.org
Signed-off-by: Thierry Herbelot <thierry.herbelot@6wind.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2 |
|
| #
b01e1e9a |
| 23-Apr-2021 |
Thierry Herbelot <thierry.herbelot@6wind.com> |
net/virtio: fix kernel set memtable for multi-queue device
Restore the original code, where VHOST_SET_MEM_TABLE is applied to all vhostfds of the device.
Fixes: 539d910c9c76 ("net/virtio: add virti
net/virtio: fix kernel set memtable for multi-queue device
Restore the original code, where VHOST_SET_MEM_TABLE is applied to all vhostfds of the device.
Fixes: 539d910c9c76 ("net/virtio: add virtio-user memory tables ops") Cc: stable@dpdk.org
Signed-off-by: Thierry Herbelot <thierry.herbelot@6wind.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v21.05-rc1 |
|
| #
3c503b24 |
| 08-Apr-2021 |
Thierry Herbelot <thierry.herbelot@6wind.com> |
net/virtio: fix kernel set owner for multi-queue devices
Restore the original code, where VHOST_SET_OWNER is applied to all vhostfds of the device.
Fixes: 06856cabb89b ("net/virtio: add virtio-user
net/virtio: fix kernel set owner for multi-queue devices
Restore the original code, where VHOST_SET_OWNER is applied to all vhostfds of the device.
Fixes: 06856cabb89b ("net/virtio: add virtio-user ops to set owner") Cc: stable@dpdk.org
Signed-off-by: Thierry Herbelot <thierry.herbelot@6wind.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v21.02, v21.02-rc4, v21.02-rc3, v21.02-rc2 |
|
| #
86388a3a |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
94973531 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
748e5ea5 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
5b75b63c |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
1b34ad28 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: remove useless request ops
Now that all the ops have been implemented, we can remove the send_request ops for all backends.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> R
net/virtio: remove useless request ops
Now that all the ops have been implemented, we can remove the send_request ops for all backends.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
8723c894 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: add virtio-user status ops
This patch introduces new callbacks to get and set the device status.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> 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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
dc65db73 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: add virtio-user vring address ops
This patch introduces a new callback for setting vrings addresses.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> 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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
ce399c36 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
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 <maxime.coquelin@redhat.com> 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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
ab9098d2 |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
net/virtio: add virtio-user vring setting ops
This patch introduces new callbacks for setting and getting vring state.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com> 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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
539d910c |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
| #
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 ...
|
| #
06856cab |
| 26-Jan-2021 |
Maxime Coquelin <maxime.coquelin@redhat.com> |
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 <maxime.coquelin@redhat.com> Reviewed-by: Chenbo Xia <chenbo.xia@intel.com>
show more ...
|
|
Revision tags: v21.02-rc1, v20.11, v20.11-rc5, v20.11-rc4, v20.11-rc3, v20.11-rc2, v20.11-rc1, v20.08, v20.08-rc4, v20.08-rc3, v20.08-rc2, v20.08-rc1, v20.05, v20.05-rc4, v20.05-rc3, v20.05-rc2, v20.05-rc1, v20.02, v20.02-rc4, v20.02-rc3, v20.02-rc2, v20.02-rc1, v19.11, v19.11-rc4 |
|
| #
47ac9661 |
| 25-Nov-2019 |
Tiwei Bie <tiwei.bie@intel.com> |
net/virtio-user: do not close tap when disabling queue pairs
Do not close the tap fds when disabling queue pairs, instead, we just need to unbind the backend. Otherwise, tap port can be destroyed un
net/virtio-user: do not close tap when disabling queue pairs
Do not close the tap fds when disabling queue pairs, instead, we just need to unbind the backend. Otherwise, tap port can be destroyed unexpectedly.
Fixes: e3b434818bbb ("net/virtio-user: support kernel vhost") Cc: stable@dpdk.org
Reported-by: Stephen Hemminger <stephen@networkplumber.org> Signed-off-by: Tiwei Bie <tiwei.bie@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
|
Revision tags: v19.11-rc3, v19.11-rc2, v19.11-rc1 |
|
| #
8ac35916 |
| 12-Aug-2019 |
David Marchand <david.marchand@redhat.com> |
remove useless include of EAL memory config header
Restrict this header inclusion to its real users.
Fixes: 028669bc9f0d ("eal: hide shared memory config") Cc: stable@dpdk.org
Signed-off-by: David
remove useless include of EAL memory config header
Restrict this header inclusion to its real users.
Fixes: 028669bc9f0d ("eal: hide shared memory config") Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
show more ...
|
|
Revision tags: v19.08, v19.08-rc4, v19.08-rc3, v19.08-rc2, v19.08-rc1, v19.05, v19.05-rc4, v19.05-rc3, v19.05-rc2, v19.05-rc1, v19.02, v19.02-rc4, v19.02-rc3, v19.02-rc2, v19.02-rc1, v18.11, v18.11-rc5, v18.11-rc4, v18.11-rc3, v18.11-rc2, v18.11-rc1 |
|
| #
520dd992 |
| 28-Oct-2018 |
Ferruh Yigit <ferruh.yigit@intel.com> |
drivers: prefix global variables with module name
Some global variables are defined with generic names, add component name as prefix to variables to prevent collusion with application variables.
Si
drivers: prefix global variables with module name
Some global variables are defined with generic names, add component name as prefix to variables to prevent collusion with application variables.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Acked-by: Shreyansh Jain <shreyansh.jain@nxp.com> Acked-by: Tianfei Zhang <tianfei.zhang@intel.com>
show more ...
|
| #
5282bb1c |
| 02-Oct-2018 |
Anatoly Burakov <anatoly.burakov@intel.com> |
mem: allow memseg lists to be marked as external
When we allocate and use DPDK memory, we need to be able to differentiate between DPDK hugepage segments and segments that were made part of DPDK but
mem: allow memseg lists to be marked as external
When we allocate and use DPDK memory, we need to be able to differentiate between DPDK hugepage segments and segments that were made part of DPDK but are externally allocated. Add such a property to memseg lists.
This breaks the ABI, so document the change in release notes. This also breaks a few internal assumptions about memory contiguousness, so adjust malloc code in a few places.
All current calls for memseg walk functions were adjusted to ignore external segments where it made sense.
Mempools is a special case, because we may be asked to allocate a mempool on a specific socket, and we need to ignore all page sizes on other heaps or other sockets. Previously, this assumption of knowing all page sizes was not a problem, but it will be now, so we have to match socket ID with page size when calculating minimum page size for a mempool.
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com> Acked-by: Andrew Rybchenko <arybchenko@solarflare.com> Acked-by: Yongseok Koh <yskoh@mellanox.com>
show more ...
|
| #
75728654 |
| 05-Sep-2018 |
Tiwei Bie <tiwei.bie@intel.com> |
net/virtio-user: fix memory hotplug support in vhost-kernel
It's possible to have much more hugepage backed memory regions than what vhost-kernel supports due to the memory hotplug, which may cause
net/virtio-user: fix memory hotplug support in vhost-kernel
It's possible to have much more hugepage backed memory regions than what vhost-kernel supports due to the memory hotplug, which may cause problems. A better solution is to have the virtio-user pass all the memory ranges reserved by DPDK to vhost-kernel.
Fixes: 12ecb2f63b12 ("net/virtio-user: support memory hotplug") Cc: stable@dpdk.org
Signed-off-by: Tiwei Bie <tiwei.bie@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|
| #
7ff26957 |
| 05-Sep-2018 |
Tiwei Bie <tiwei.bie@intel.com> |
net/virtio-user: fix deadlock in memory events callback
Deadlock can occur when allocating memory if a vhost-kernel based virtio-user device is in use. To fix the deadlock, we will take memory hotpl
net/virtio-user: fix deadlock in memory events callback
Deadlock can occur when allocating memory if a vhost-kernel based virtio-user device is in use. To fix the deadlock, we will take memory hotplug lock explicitly in virtio-user when necessary, and always call the _thread_unsafe memory functions.
Bugzilla ID: 81 Fixes: 12ecb2f63b12 ("net/virtio-user: support memory hotplug") Cc: stable@dpdk.org
Reported-by: Seán Harte <seanbh@gmail.com> Signed-off-by: Tiwei Bie <tiwei.bie@intel.com> Tested-by: Seán Harte <seanbh@gmail.com> Reviewed-by: Seán Harte <seanbh@gmail.com> Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
show more ...
|