Anatoly Burakov [Thu, 4 Oct 2018 10:20:33 +0000 (11:20 +0100)]
mk: build with _GNU_SOURCE defined by default
We use _GNU_SOURCE all over the place, but often times we miss
defining it, resulting in broken builds on musl. Rather than
fixing every library's and driver's and application's makefile,
fix it by simply defining _GNU_SOURCE by default for all
builds.
Remove all usages of _GNU_SOURCE in source files and makefiles,
and also fixup a couple of instances of using __USE_GNU instead
of _GNU_SOURCE.
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Thomas Monjalon [Wed, 17 Oct 2018 23:42:52 +0000 (01:42 +0200)]
devargs: fix freeing during device removal
After calling unplug function of a bus, the device is expected
to be freed. It is too late for getting devargs to remove.
Anyway, the buses which implement unplug are already freeing
the devargs, except the PCI bus.
So the call to rte_devargs_remove() is removed from EAL and
added in PCI.
Fixes:
2effa126fbd8 ("devargs: simplify parameters of removal function")
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Raslan Darawsheh [Wed, 17 Oct 2018 15:22:11 +0000 (18:22 +0300)]
app/testpmd: set packet dump based on verbosity level
when changing verbosity level it will configure rx/tx callbacks to dump
packets based on the verbosity value as following:
1- dump only received packets:
testpmd> set verbose 1
2- dump only sent packets:
testpmd> set verbose 2
3- dump sent and received packets:
testpmd> set verbose (any number > 2)
4- disable dump
testpmd> set verbose 0
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Raslan Darawsheh [Wed, 17 Oct 2018 15:22:10 +0000 (18:22 +0300)]
app/testpmd: add packet dump callbacks
add new rx/tx callback functions to be used for dumping the packets.
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Raslan Darawsheh [Wed, 17 Oct 2018 15:22:09 +0000 (18:22 +0300)]
app/testpmd: move dumping packets to a separate function
verbosity for the received/sent packets is needed in all of the
forwarding engines so moving it to be in a separate function
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
Phil Yang [Wed, 17 Oct 2018 01:36:30 +0000 (09:36 +0800)]
app/testpmd: fix physical port socket initialization
Once the lcore list setting excluded the socket which physical device
attached, it will cause failure. Meanwhile, it will disable Testpmd
cross NUMA scenario.
Fixes:
dbfb8ec7094c ("app/testpmd: optimize mbuf pool allocation")
Cc: stable@dpdk.org
Signed-off-by: Phil Yang <phil.yang@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Raslan Darawsheh [Wed, 10 Oct 2018 07:01:41 +0000 (07:01 +0000)]
net/tap: fix reported number of Tx packets
When writev fails to send packets it doesn't update the
number of Tx packets, but it still num_tx is updated.
The value that should be returned is the actual number
of sent packets which is num_packets.
Fixes:
02f96a0a82d1 ("net/tap: add TUN/TAP device PMD")
CC: stable@dpdk.org
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
Acked-by: Keith Wiles <keith.wiles@intel.com>
Stephen Hemminger [Wed, 25 Jul 2018 18:20:19 +0000 (11:20 -0700)]
net/ixgbe: remove mild profanity
At the tail end of comment about barriers (I feel your pain);
remove mild profanity.
Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Stephen Hemminger [Wed, 25 Jul 2018 18:20:17 +0000 (11:20 -0700)]
net/bnx2x: remove profanity
No need for profanity in comments.
Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Jerin Jacob [Tue, 16 Oct 2018 13:16:43 +0000 (13:16 +0000)]
doc: clarify VLAN and QinQ Tx offload prerequisite
- Fix missing PKT_TX_VLAN mbuf.ol_flag and mbuf.vlan_tci
fields for Tx VLAN INSERT offload.
- Fix missing mbuf.vlan_tci_outer field for Tx QINQ INSERT offload.
- Rename deprecated PKT_TX_QINQ_PKT to PKT_TX_QINQ
Fixes:
cba7f53b717d ("ethdev: introduce Tx queue offloads API")
Cc: stable@dpdk.org
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Nithin Dabilpuram [Tue, 16 Oct 2018 12:45:43 +0000 (12:45 +0000)]
mbuf: fix missing Tx outer UDP checksum flag name
Fix missing Tx outer udp checksum flag name
Fixes:
df694a05bfff ("ethdev: add Tx offload outer UDP checksum definition")
Signed-off-by: Nithin Dabilpuram <ndabilpuram@marvell.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Jerin Jacob [Tue, 16 Oct 2018 12:45:40 +0000 (12:45 +0000)]
mbuf: fix offload flag name and list
Fix missing PKT_TX* & PKT_RX* ol_flag name and fix ol_flag list.
Fixes:
6d18505efaa6 ("vhost: support UDP Fragmentation Offload")
Fixes:
829a1c2c41dc ("mbuf: extend flow director field")
Fixes:
63c0d74daaa9 ("mbuf: add Tx side tunneling type")
Cc: stable@dpdk.org
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Shahaf Shuler [Tue, 16 Oct 2018 06:05:17 +0000 (09:05 +0300)]
net/mlx5: fix build on Arm
On some ARM environment, the below compilation error will be seen
dpdk/drivers/net/mlx5/mlx5_flow_dv.c: In function
'flow_dv_translate_item_nvgre':
/tmp/dpdk/drivers/net/mlx5/mlx5_flow_dv.c:785:22: error: pointer targets
in initialization differ in signedness [-Werror=pointer-sign]
const char *tni_v = nvgre_v->tni;
The reason for this error is that nvgre_v->tni is defined as byte array
in size of 3B. However the code in the function iterate till the 4B in
order to copy/set also the subsequent field after it (flow_id)
Fixing by pointing to this struct from a different pointer.
Fixes:
fc2c498ccb94 ("net/mlx5: add Direct Verbs translate items")
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Ori Kam <orika@mellanox.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:47 +0000 (14:40 +0200)]
vhost: enable postcopy protocol feature
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:46 +0000 (14:40 +0200)]
net/vhost: add parameter to enable postcopy
Introduce a new postcopy-support parameter to Vhost PMD that
passes the RTE_VHOST_USER_POSTCOPY_SUPPORT flag at vhost
device register time.
Flag should only be set if application does not prefault guest
memory using, for example, mlockall() syscall.
Default value is 0, meaning that postcopy support is disabled
unless specified explicitly.
Example to enable postcopy support for a given device:
--vdev 'net_vhost0,iface=/tmp/vhost-user1,postcopy-support=1'
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:45 +0000 (14:40 +0200)]
vhost: restrict postcopy live-migration enablement
Postcopy live-migration feature requires the application to
not populate the guest memory. As the vhost library cannot
prevent the application to that (e.g. preventing the
application to call mlockall()), the feature is disabled by
default.
The application should only enable the feature if it does not
force the guest memory to be populated.
In case the user passes the RTE_VHOST_USER_POSTCOPY_SUPPORT
flag at registration but the feature was not compiled,
registration fails.
For the same reason, postcopy and dequeue zero copy features
are not compatible, so don't advertize postcopy support if
dequeue zero copy is requested.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:44 +0000 (14:40 +0200)]
vhost: support postcopy end request
The master sends this message before stopping handling
userfaults, so that the backend closes the userfaultfd.
The master waits for the slave to acknowledge the request
with an empty 64bits payload for synchronization purpose.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:43 +0000 (14:40 +0200)]
vhost: send userfault range addresses back to Qemu
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:42 +0000 (14:40 +0200)]
vhost: avoid useless VhostUserMemory copy
The VHOST_USER_SET_MEM_TABLE payload is copied when handled,
whereas it could directly be referenced.
This is not very important, but next, we'll need to update the
payload and send it back to Qemu.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Ilya Maximets <i.maximets@samsung.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:41 +0000 (14:40 +0200)]
vhost: register new regions with userfaultfd
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:40 +0000 (14:40 +0200)]
vhost: support postcopy listen message
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:39 +0000 (14:40 +0200)]
vhost: introduce postcopy advise message
This patch opens a userfaultfd and sends it back to Qemu's
VHOST_USER_POSTCOPY_ADVISE request.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:38 +0000 (14:40 +0200)]
vhost: add config flag for postcopy
Postcopy live-migration features relies on userfaultfd,
which was only introduced in kernel v4.3.
This patch introduces a new define to allow building vhost
library on kernels not supporting userfaultfd.
With legacy build system, user has to explicitly set
CONFIG_RTE_LIBRTE_VHOST_POSTCOPY to 'y'.
With Meson build system, RTE_LIBRTE_VHOST_POSTCOPY gets
automatically defined if userfaultfd kernel header is
present.
Suggested-by: Ilya Maximets <i.maximets@samsung.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Ilya Maximets <i.maximets@samsung.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:37 +0000 (14:40 +0200)]
vhost: enable fds passing in vhost-user messages
Passing userfault fds to Qemu will be required for postcopy
live-migration feature.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:36 +0000 (14:40 +0200)]
vhost: pass socket fd to message handling callbacks
This is not used for now, but will be needed for the
special handling of VHOST_USER_SET_MEM_TABLE message
once postcopy will be supported.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:35 +0000 (14:40 +0200)]
vhost: add number of fds to vhost-user messages
As soon as some ancillary data (fds) are received, it is copied
without checking its length.
This patch adds the number of fds received to the message,
which is set in read_vhost_message().
This is preliminary work to support sending fds to Qemu.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:34 +0000 (14:40 +0200)]
vhost: define postcopy protocol flag
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Ilya Maximets <i.maximets@samsung.com>
Reviewed-by: Tiwei Bie <tiwei.bie@intel.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:33 +0000 (14:40 +0200)]
vhost: fix error handling when mem table gets updated
When the memory table gets updated, the rings addresses need
to be translated again. If it fails, we need to exit cleanly
by unmapping memory regions.
Fixes:
d5022533c20a ("vhost: retranslate vring addr when memory table changes")
Cc: stable@dpdk.org
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Ilya Maximets <i.maximets@samsung.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:32 +0000 (14:40 +0200)]
vhost: fix payload size of reply
QEMU doesn't expect any payload for the reply of
VHOST_USER_SET_LOG_BASE request, so don't send any.
Note that the Vhost-user specification isn't clear about
it and would need to be fixed.
Fixes:
54f9e32305d4 ("vhost: handle dirty pages logging request")
Cc: stable@dpdk.org
Reported-by: Ilya Maximets <i.maximets@samsung.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Ilya Maximets <i.maximets@samsung.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:31 +0000 (14:40 +0200)]
vhost: clarify reply-ack in case a reply was already sent
For messages that require a reply, a second ack should not be
sent when reply-ack protocol feature is negotiated, even if
the corresponding flag is set in the message.
The code is compliant with the spec but it isn't clear it is,
so this patch adds a comment to make it explicit.
Suggested-by: Ilya Maximets <i.maximets@samsung.com>
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Ilya Maximets <i.maximets@samsung.com>
Reviewed-by: Tiwei Bie <tiwei.bie@intel.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:30 +0000 (14:40 +0200)]
vhost: fix return code of messages requiring replies
VHOST_USER_GET_PROTOCOL_FEATURES, VHOST_USER_GET_VRING_BASE
and VHOST_USER_SET_LOG_BASE require replies, so their handlers
should return VH_RESULT_REPLY, not VH_RESULT_OK.
Fixes:
0bff510b5ea6 ("vhost: unify message handling function signature")
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Ilya Maximets <i.maximets@samsung.com>
Reviewed-by: Tiwei Bie <tiwei.bie@intel.com>
Maxime Coquelin [Fri, 12 Oct 2018 12:40:29 +0000 (14:40 +0200)]
vhost: fix messages results handling
Return of message handling has now changed to an enum that can
take non-negative value that is not zero in case a reply is
needed. But the code checking the variable afterwards has not
been updated, leading to success messages handling being
treated as errors.
External post and pre callbacks return type needs also to be
changed to the new enum, so that its handling is consistent.
This is done in this patch alongside with the convertion of
its only user, vhost-crypto backend.
Fixes:
0bff510b5ea6 ("vhost: unify message handling function signature")
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Xiaolong Ye [Fri, 12 Oct 2018 08:52:21 +0000 (16:52 +0800)]
vhost: add doxygen comment to vDPA header
As APIs in rte_vdpa.h are public, we need to add doxygen comments
to all APIs and structures.
Signed-off-by: Xiaolong Ye <xiaolong.ye@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Tiwei Bie [Thu, 11 Oct 2018 14:22:34 +0000 (22:22 +0800)]
vhost: fix notification for packed ring
The notification can't be disabled in packed ring when
application tries to disable notification, because the
device event flags field is overwritten by an unexpected
value. This patch fixes this issue.
Fixes:
b1cce26af1dc ("vhost: add notification for packed ring")
Cc: stable@dpdk.org
Signed-off-by: Tiwei Bie <tiwei.bie@intel.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Xiaoyu Min [Thu, 11 Oct 2018 13:31:46 +0000 (13:31 +0000)]
net/mlx5: rewrite MAC address by E-Switch
Offload following modify MAC address actions to E-Switch
via TC-Flower driver
- RTE_FLOW_ACTION_TYPE_SET_MAC_SRC
- RTE_FLOW_ACTION_TYPE_SET_MAC_DST
The corresponding rte_flow_item_eth must be present in
rte_flow pattern
Only support modify outer layer MAC address
The example testpmd command is:
flow create 0 transfer ingress
pattern eth / ipv4 / udp dst is 7000 / end
actions set_mac_dst mac_addr dd:00:aa:11:bb:33 /
set_mac_src mac_addr bb:00:cc:11:aa:22 /
port_id id 1 / end
Signed-off-by: Xiaoyu Min <jackmin@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Xiaoyu Min [Thu, 11 Oct 2018 13:31:43 +0000 (13:31 +0000)]
app/testpmd: add commands to modify MAC address
add commands to support following actions:
- RTE_FLOW_ACTION_TYPE_SET_MAC_SRC
- RTE_FLOW_ACTION_TYPE_SET_MAC_DST
Signed-off-by: Xiaoyu Min <jackmin@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Xiaoyu Min [Thu, 11 Oct 2018 13:31:39 +0000 (13:31 +0000)]
ethdev: add generic MAC address rewrite actions
rte_flow actions:
- RTE_FLOW_ACTION_TYPE_SET_MAC_SRC
- RTE_FLOW_ACTION_TYPE_SET_MAC_DST
added in order to offload to NIC
The rte_flow_itme_eth must be present in rte_flow pattern
Signed-off-by: Xiaoyu Min <jackmin@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Xiaoyu Min [Tue, 16 Oct 2018 08:14:30 +0000 (08:14 +0000)]
net/mlx5: rewrite TTL by E-Switch
Offload following modify TTL actions to E-Switch via
TC-Flower driver
- RTE_FLOW_ACTION_TYPE_SET_TTL
- RTE_FLOW_ACTION_TYPE_DEC_TTL
The corresponding IP protocol rte_flow_item_ipv[4|6]
must be present in rte_flow pattern otherwith PMD
return error
The example testpmd commands are:
flow create 0 transfer ingress
pattern eth / ipv4 / udp dst is 7000 / end
actions dec_ttl /
port_id id 1 / end
flow create 0 transfer ingress
pattern eth / ipv4 / udp dst is 7001 / end
actions set_ttl ttl_value 10 /
port_id id 1 / end
Signed-off-by: Xiaoyu Min <jackmin@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Xiaoyu Min [Tue, 16 Oct 2018 08:14:27 +0000 (08:14 +0000)]
app/testpmd: add commands to modify TTL
add commands which supports following TTL actions:
- RTE_FLOW_ACTION_TYPE_DEC_TTL
- RTE_FLOW_ACTION_TYPE_SET_TTL
Signed-off-by: Xiaoyu Min <jackmin@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Xiaoyu Min [Tue, 16 Oct 2018 08:14:23 +0000 (08:14 +0000)]
ethdev: add generic TTL rewrite actions
rewrite TTL by decrease or just set it directly
it's not necessary to check if the final result
is zero or not
This is slightly different from the one defined
by openflow and more generic
Signed-off-by: Xiaoyu Min <jackmin@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Alejandro Lucero [Mon, 15 Oct 2018 14:11:02 +0000 (15:11 +0100)]
ethdev: add field for device data per process
Primary and secondary processes share a per-device private data. With
current design it is not possible to have data per-device per-process.
This is required for handling properly the CPP interface inside the NFP
PMD with multiprocess support.
There is also at least another PMD driver, tap, with similar
requirements for per-process device data.
Signed-off-by: Alejandro Lucero <alejandro.lucero@netronome.com>
Reviewed-by: Andrew Rybchenko <arybchenko@solarflare.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Xiaoyun Li [Mon, 15 Oct 2018 04:36:34 +0000 (00:36 -0400)]
doc: add ixgbe known issue with legacy interrrupt
When using uio_pci_generic module or using legacy interrupt mode of
igb_uio or vfio, X550 cannot get interrupts. Because the Interrupt
Status bit is not implemented, then the irq cannot be handled correctly
and cannot report the event fd to DPDK apps.
Add this hw limitation and details into ixgbe known issue.
Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
Rahul Lakkireddy [Mon, 15 Oct 2018 14:05:13 +0000 (19:35 +0530)]
net/cxgbe: add action to swap MAC addresses
Implement RTE_FLOW_ACTION_TYPE_MAC_SWAP to offload flows with
action to swap the source and destination MAC addresses in the
outermost Ethernet header.
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Ed Czeck [Mon, 15 Oct 2018 12:53:26 +0000 (08:53 -0400)]
net/ark: support updated hardware and Tx meta data
Support for version 2 of DDM hardware and user tx meta data.
Verify version during initialization.
Signed-off-by: Ed Czeck <ed.czeck@atomicrules.com>
Ed Czeck [Mon, 15 Oct 2018 12:53:11 +0000 (08:53 -0400)]
net/ark: remove useless hardware notifications
Only send notification to mpu when crossing 64 index boundary.
Signed-off-by: Ed Czeck <ed.czeck@atomicrules.com>
Ed Czeck [Mon, 15 Oct 2018 12:52:41 +0000 (08:52 -0400)]
net/ark: add recovery for lack of mbufs
Attempt to allocate smaller chunk of mbufs when larger amount is
not available. Report error when small chunk not available.
Signed-off-by: Ed Czeck <ed.czeck@atomicrules.com>
Phil Yang [Fri, 12 Oct 2018 09:34:55 +0000 (17:34 +0800)]
app/testpmd: fix vdev socket initialization
The cmdline settings of port-numa-config and rxring-numa-config have
been flushed by the following init_config. If we don't configure the
port-numa-config, the virtual device will allocate the device ports to
socket 0. It will cause failure when the socket 0 is unavailable.
eg:
testpmd -l <cores from socket 1> --vdev net_pcap0,iface=lo
--socket-mem=64 -- --numa --port-numa-config="(0,1)"
--ring-numa-config="(0,1,1),(0,2,1)" -i
...
Configuring Port 0 (socket 0)
Failed to setup RX queue:No mempool allocation on the socket 0
EAL: Error - exiting with code: 1
Cause: Start ports failed
Fix by allocate the devices port to the first available socket or the
socket configured in port-numa-config.
Fixes:
487f9a592a27 ("app/testpmd: fix NUMA structures initialization")
Fixes:
20a0286fd2c0 ("app/testpmd: check socket id validity")
Cc: stable@dpdk.org
Signed-off-by: Phil Yang <phil.yang@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Stephen Hemminger [Fri, 12 Oct 2018 23:42:52 +0000 (16:42 -0700)]
net/qede: remove invalid config option checks
Now that logging of initialization is controlled by dynamic debug
level, remove the #ifdef for RTE_LIBRTE_QEDE_DEBUG_INIT since that
config option does not exist in common_base and is not documented.
Fixes:
69b6573980c1 ("net/qede: implement dynamic logging")
Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Stephen Hemminger [Fri, 12 Oct 2018 23:42:51 +0000 (16:42 -0700)]
doc: remove invalid config options from liquidio guide
The config options for init and debug driver were replaced by
dynamic log levels.
Fixes:
70e28c612d65 ("net/liquidio: implement dynamic logging")
Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Stephen Hemminger [Fri, 12 Oct 2018 23:42:50 +0000 (16:42 -0700)]
doc: remove invalid config option from ena guide
The ena driver has used dynamic log type to enable init debugging since
18.05 but the documentation still has leftover mention of the config
option.
Fixes:
8bc0acae970d ("net/ena: implement dynamic logging")
Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Haiyue Wang [Sun, 14 Oct 2018 02:34:05 +0000 (10:34 +0800)]
net/avf: fix build with debug enabled
DEBUG_DUMP_DESC flag is enabled/disabled from Makefile and enabling it
causing the build issue.
Add the missed 'volatile' keyword to avoid the warning for type
mismatch, which will be treated as compiler error if WERROR_FLAGS
is enabled.
Fixes:
bfd38e4d708b ("net/avf: fix missing compiler error flags")
CC: stable@dpdk.org
Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Xiaoyu Min [Mon, 15 Oct 2018 01:45:23 +0000 (01:45 +0000)]
net/mlx5: fix build with zero-size array
If the build environment doesn't have 'linux/tc_act/tc_pedit.h' header,
compiler will use needed structs defined in mlx5_flow_tcf.c.
However, there is a zero-size array defined in one struct and
ISO C forbids this when -Wpedantic is set by debug mode.
Simply put __extension__ keyword before the struct in question.
Fixes:
2ed2fe5f0a9c ("net/mlx5: rewrite IP address UDP/TCP port by E-Switch")
Signed-off-by: Xiaoyu Min <jackmin@mellanox.com>
Yongseok Koh [Fri, 12 Oct 2018 08:42:33 +0000 (08:42 +0000)]
net/mlx5: support multiple groups and jump action
rte_flow has 'group' attribute and 'jump' action in order to support
multiple groups. This feature is known as multi-table support ('chain' in
linux TC flower) in general because a group means a table of flows. Example
commands are:
flow create 0 transfer priority 1 ingress
pattern eth / vlan vid is 100 / end
actions jump group 1 / end
flow create 0 transfer priority 1 ingress
pattern eth / vlan vid is 200 / end
actions jump group 2 / end
flow create 0 transfer group 1 priority 2 ingress
pattern eth / vlan vid is 100 /
ipv4 dst spec 192.168.40.0 dst prefix 24 / end
actions drop / end
flow create 0 transfer group 1 priority 2 ingress
pattern end
actions of_pop_vlan / port_id id 1 / end
flow create 0 transfer group 2 priority 2 ingress
pattern eth / vlan vid is 200 /
ipv4 dst spec 192.168.40.0 dst prefix 24 / end
actions of_pop_vlan / port_id id 2 / end
flow create 0 transfer group 2 priority 2 ingress
pattern end
actions port_id id 2 / end
With theses flows, if a packet having vlan 200 and src_ip as 192.168.40.1,
this packet will firstly hit the 1st flow. Then it will hit the 5th flow
because of the 'jump' action. As a result, the packet will be forwarded to
port 2 (VF representor) with vlan tag being stripped off. If the packet had
vlan 100 instead, it would be dropped by the 3rd flow.
Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Igor Russkikh [Fri, 12 Oct 2018 11:09:55 +0000 (11:09 +0000)]
net/atlantic: add release notes
Release notes for Aquantia atlantic driver.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:53 +0000 (11:09 +0000)]
net/atlantic: read MAC registers for debug purposes
This patch add support for dumping MAC registers.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:51 +0000 (11:09 +0000)]
net/atlantic: implement EEPROM get/set
Add support for EEPROM reading/writing.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:49 +0000 (11:09 +0000)]
net/atlantic: implement VLAN filters and offloads
VLAN filters and VLAN offloads implementation.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:45 +0000 (11:09 +0000)]
net/atlantic: implement MTU configuration
Add support for updating MTU value.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:43 +0000 (11:09 +0000)]
net/atlantic: implement MAC address manipulations
Add support for adding/removing MAC addresses.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:41 +0000 (11:09 +0000)]
net/atlantic: add flow control configuration
Add support for flow control feature.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Igor Russkikh [Fri, 12 Oct 2018 11:09:38 +0000 (11:09 +0000)]
net/atlantic: implement RSS and RETA manipulation API
Add support for Receive Side Scaling feature.
RSS hash and reta table configuration.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:36 +0000 (11:09 +0000)]
net/atlantic: implement promisc and allmulti modes
Add support for promiscuous/allmulticast modes configuration.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:34 +0000 (11:09 +0000)]
net/atlantic: add Rx/Tx descriptors information
Add support for Rx/Tx descriptors status information.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:31 +0000 (11:09 +0000)]
net/atlantic: implement device statistics
Add support for device stats, xstats and queue stats
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:29 +0000 (11:09 +0000)]
net/atlantic: add link status and interrupt management
Implement link interrupt, link info, link polling.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:27 +0000 (11:09 +0000)]
net/atlantic: implement Tx path
Add implementation for TX datapath.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Igor Russkikh [Fri, 12 Oct 2018 11:09:25 +0000 (11:09 +0000)]
net/atlantic: implement Rx path
Add implementation for RX datapath.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:22 +0000 (11:09 +0000)]
net/atlantic: implement core logic for Tx/Rx
Add RX/TX function prototypes for further datapath development.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:20 +0000 (11:09 +0000)]
net/atlantic: configure device start/stop
Start, stop and reset are all done via hw_atl layer.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Igor Russkikh [Fri, 12 Oct 2018 11:09:17 +0000 (11:09 +0000)]
net/atlantic: add b0 hardware layer
This is hw_atl logic layer derived from linux atlantic
driver. It contains RX/TX hardware initialization
sequences, various hw configuration.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Igor Russkikh [Fri, 12 Oct 2018 11:09:14 +0000 (11:09 +0000)]
net/atlantic: implement firmware operations
AQC NICs comes in fields with two major
FW generations: 1x and 3x.
This is part of linux atlantic driver shared code,
responsible for internal NIC firmware interactions,
including link management ops, FW initialization,
various lifecycle features.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Igor Russkikh [Fri, 12 Oct 2018 11:09:11 +0000 (11:09 +0000)]
net/atlantic: add hardware access layer
This patch introduces hw_atl layer which is maintained
in sync with linux kernel driver.
It will generally be in sync with linux upstream.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Igor Russkikh [Fri, 12 Oct 2018 11:09:08 +0000 (11:09 +0000)]
net/atlantic: add hardware registers access routines
Add implementation for hardware registers access routines.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Igor Russkikh [Fri, 12 Oct 2018 11:09:06 +0000 (11:09 +0000)]
net/atlantic: add logging structure
Implement logging macroses for debug purposes.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
Pavel Belous [Fri, 12 Oct 2018 11:09:03 +0000 (11:09 +0000)]
net/atlantic: add PMD driver skeleton
Makefile/meson build infrastructure, atl_ethdev minimal skeleton,
header with aquantia aQtion NIC device and vendor IDs.
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: Pavel Belous <pavel.belous@aquantia.com>
John Daley [Wed, 10 Oct 2018 22:11:31 +0000 (15:11 -0700)]
net/enic: fix counter action
- track whether counter DMAs are active or not so they can be stopped if
needed before DMA memory is freed
- fix counter DMA shut-down by changing vnic_dev_counter_dma_cfg() to
take the number of counters to DMA instead of high counter index and
use num counters = 0 to shut off DMAs
- remove unnecessary checks that DMA counter memory is valid and that
counter DMAs are in use
- change the minimum DMA period to match what 1400 series adapter is
capable of
- fix comments and change a couple variable names to make more sense
Fixes:
86df6c4e2fce ("net/enic: support flow counter action")
Signed-off-by: John Daley <johndale@cisco.com>
Reviewed-by: Hyong Youb Kim <hyonkim@cisco.com>
Fiona Trahe [Thu, 11 Oct 2018 17:14:05 +0000 (18:14 +0100)]
common/qat: fix failure to create PMD
If QAT crypto pmd failed to be created due to reaching MAX
cryptodevs it prevented QAT comp PMD being created. And vice versa.
Change to warning in these cases and allow the other PMD to be created.
Fixes:
c0c90bc4cade ("compress/qat: add create and destroy functions")
Cc: stable@dpdk.org
Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
Acked-by: Tomasz Cel <tomaszx.cel@intel.com>
Fan Zhang [Mon, 15 Oct 2018 11:28:16 +0000 (12:28 +0100)]
cryptodev: fix library version
This patch fixes the cryptodev library version number that was
missed updating in DPDK 18.08.
Fixes:
a4493be5bdfa ("cryptodev: replace bus specific struct with generic dev")
Cc: stable@dpdk.org
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Hemant Agrawal [Tue, 16 Oct 2018 09:47:53 +0000 (09:47 +0000)]
test/crypto: add CAAM JR validation cases
This patch adds the validation test cases for
CAAM JR driver
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Reviewed-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Tue, 16 Oct 2018 12:48:57 +0000 (18:18 +0530)]
doc: add CAAM JR guide
add caam jr driver details, supported features and algorithms
in the document.
release note and MAINTAINERS are also updated.
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Fri, 12 Oct 2018 14:40:54 +0000 (20:10 +0530)]
crypto/caam_jr: add security offload
This patch provides the support for protocol offload
to the hardware. following security operations are
added:
- session_create
- session_destroy
- capabilities_get
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Fri, 12 Oct 2018 14:40:53 +0000 (20:10 +0530)]
crypto/caam_jr: add statistics operations
This patch adds the following statistics operations:
- stats_get
- stats_reset
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:52 +0000 (20:10 +0530)]
crypto/caam_jr: add scatter gather
This patch add the scatter gather feature
for auth-only, cipher-only and cipher-auth
operations
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:51 +0000 (20:10 +0530)]
crypto/caam_jr: add enqueue/dequeue operations
This patch add support for :
1. creating run time sec hw decriptors for a given request.
2. enqueue operation to the caam jr ring
3. dequeue operation from the caam jr ring in poll mode
4. creating a crypto protocol descriptor for session - first time.
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:49 +0000 (20:10 +0530)]
crypto/caam_jr: add device cababilities
add device capabilities for supported algorithms,
key length etc.
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:50 +0000 (20:10 +0530)]
crypto/caam_jr: add session configuration methods
This patch add support to create session configuration
of various types i.e. cipher, auth and aead etc.
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Hemant Agrawal [Fri, 12 Oct 2018 14:40:48 +0000 (20:10 +0530)]
crypto/caam_jr: add queue pair config
add following ops for configuring queues
- queue_pair_setup
- queue_pair_release
- queue_pair_count
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:47 +0000 (20:10 +0530)]
crypto/caam_jr: add device basic operations
This patch adds following device operations
- dev_configure
- dev_start
- dev_stop
- dev_close
- dev_infos_get
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:46 +0000 (20:10 +0530)]
crypto/caam_jr: add basic job ring routines
This patch adds following job ring routines
- init_job_ring (configure hw/sw resources)
- shutdown_job_ring (releases hw/sw resources)
- close_job_ring (flush job ring)
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:45 +0000 (20:10 +0530)]
crypto/caam_jr: add UIO specific operations
caam_jr need support from kernel caam driver for
job ring initialisation. So to access register space
for job ring and allow re configure and map to userspace
UIO interface is used. This also allows to handle the
caam interrupts from the user space.
This patch adds UIO specific operations
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:44 +0000 (20:10 +0530)]
crypto/caam_jr: add routines to configure HW
This patch add routines for configuring the hw
to support various features.
These routines will be used by the PMD ops.
The patch also defines structure and macros used
to access hw capabilities.
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:43 +0000 (20:10 +0530)]
crypto/caam_jr: add HW tuning options
caam_jr hardware can be tuned for multiple settings
like ring depth, coalescing, notification types, cache
size etc.
These parameter can be used for performance tuning
for various platforms.
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Gagandeep Singh [Fri, 12 Oct 2018 14:40:42 +0000 (20:10 +0530)]
crypto/caam_jr: introduce basic driver
The caam_jr poll mode crypto driver is supported for
NXP SEC 4.x+ (CAAM) hardware accelerator.
This driver is by default supported on LE platforms,
if it is used on BE platforms like LS104X,
config option CONFIG_RTE_LIBRTE_PMD_CAAM_JR_BE can be
enabled.
This patch add skeleton for caam jobring driver
with probe and uintialisation functions
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Fan Zhang [Wed, 10 Oct 2018 11:04:41 +0000 (12:04 +0100)]
crypto/aesni_mb: support AES-GCM algorithm
This patch updates the current AESNI-MB PMD with added AES-GCM
algorithm support. The patch includes the necessary changes
to the code including the capability update, control and data
patch changes for the AES-GCM algorithm support.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Acked-by: Arek Kusztal <arkadiuszx.kusztal@intel.com>
Fiona Trahe [Mon, 1 Oct 2018 21:17:44 +0000 (22:17 +0100)]
common/qat: support GEN3 devices
This adds pci detection, queue-pair configuration and
documentation for Intel GEN3 QuickAssist devices.
Signed-off-by: Fiona Trahe <fiona.trahe@intel.com>
Acked-by: Tomasz Jozwiak <tomaszx.jozwiak@intel.com>
Tomasz Cel [Tue, 9 Oct 2018 16:08:10 +0000 (18:08 +0200)]
crypto/qat: support AES-CMAC
This patch add AES-CMAC support. CMAC is a keyed hash function
that is based on a symmetric key block cipher. It is One-Key
CBC MAC improvement over XCBC-MAC. RFC 4493. NIST SP 800-38B.
Signed-off-by: Tomasz Cel <tomaszx.cel@intel.com>
Signed-off-by: Arek Kusztal <arkadiuszx.kusztal@intel.com>
Acked-by: Fiona Trahe <fiona.trahe@intel.com>
Junxiao Shi [Tue, 9 Oct 2018 14:16:23 +0000 (10:16 -0400)]
cryptodev: fix pool element size for undefined operation
The documentation of rte_crypto_op_pool_create indicates that
specifying RTE_CRYPTO_OP_TYPE_UNDEFINED would create a pool that
supports all operation types. This change makes the code
consistent with documentation.
Fixes:
c0f87eb5252b ("cryptodev: change burst API to be crypto op oriented")
Cc: stable@dpdk.org
Signed-off-by: Junxiao Shi <git@mail1.yoursunny.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Akhil Goyal [Fri, 14 Sep 2018 11:48:10 +0000 (17:18 +0530)]
event/dpaa2: support crypto adapter
event dpaa2 device support both ethernet as well as
crypto queues to be attached to it. eth_rx_adapter
provide infrastructure to attach ethernet queues and
crypto_adapter provide support for crypto queues.
This patch add support for dpaa2_eventdev to attach
dpaa2_sec queues.
Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
Signed-off-by: Ashish Jain <ashish.jain@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Abhinandan Gujjar <abhinandan.gujjar@intel.com>
Ashish Jain [Fri, 14 Sep 2018 11:48:09 +0000 (17:18 +0530)]
crypto/dpaa2_sec: support atomic queues
Queues attached to event crypto device can be
parallel, atomic and ordered.
This patch add support for atomic queues processing
for dpaa2_sec queues.
Signed-off-by: Ashish Jain <ashish.jain@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Akhil Goyal [Fri, 14 Sep 2018 11:48:08 +0000 (17:18 +0530)]
crypto/dpaa2_sec: support event crypto adapter
dpaa2_sec hw queues can be attached to a hw dpaa2 event
device and the application can configure the event
crypto adapter to access the dpaa2_sec packets using
hardware events.
This patch defines APIs which can be used by the dpaa2
event device to attach/detach dpaa2_sec queues.
Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
Signed-off-by: Ashish Jain <ashish.jain@nxp.com>