numam-dpdk/lib
Ciara Power eeaeca82b8 cryptodev: fix freeing after device release
The PMD destroy function was calling the release function, which frees
cryptodev->data, and then tries to free cryptodev->data->dev_private,
which causes the heap use after free issue.

A temporary pointer is set before the free of cryptodev->data,
which can then be used afterwards to free dev_private.
The free cannot be moved to before the release function is called,
as dev_private is used in the PMD close function while being released.

Fixes: 9e6edea418 ("cryptodev: add APIs to assist PMD initialisation")
Cc: stable@dpdk.org

Reported-by: Zhihong Peng <zhihongx.peng@intel.com>
Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Akhil Goyal <gakhil@marvell.com>
2021-07-30 21:08:12 +02:00
..
acl acl: fix build with GCC 6.3 2021-06-17 09:37:11 +02:00
bbdev log: register with standardized names 2021-05-11 15:17:55 +02:00
bitratestats lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
bpf log: register with standardized names 2021-05-11 15:17:55 +02:00
cfgfile log: register with standardized names 2021-05-11 15:17:55 +02:00
cmdline lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
compressdev log: register with standardized names 2021-05-11 15:17:55 +02:00
cryptodev cryptodev: fix freeing after device release 2021-07-30 21:08:12 +02:00
distributor distributor: fix 128-bit write alignment 2021-07-20 14:32:08 +02:00
eal eal/windows: cleanup virt2phys handle 2021-07-30 18:56:01 +02:00
efd lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
ethdev ethdev: keep count of representor ranges in API 2021-07-10 11:29:11 +02:00
eventdev eventdev: fix event port setup in Tx adapter 2021-07-30 12:55:19 +02:00
fib lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
flow_classify flow_classify: fix leaking rules on delete 2021-06-24 15:34:45 +02:00
graph eal: save error in string copy 2021-07-05 15:11:30 +02:00
gro lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
gso lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
hash hash: fix tuple adjustment 2021-05-10 15:31:42 +02:00
ip_frag ip_frag: fix fragmenting IPv4 packet with header option 2021-04-21 16:50:46 +02:00
ipsec lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
jobstats lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
kni kni: update link only on change 2021-07-09 17:22:42 +02:00
kvargs lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
latencystats lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
lpm config/arm: fix SVE build with GCC 8.3 2021-07-09 22:25:24 +02:00
mbuf mbuf: clarify usage of packet pool initializers 2021-05-04 22:41:32 +02:00
member log: register with standardized names 2021-05-11 15:17:55 +02:00
mempool mempool: distinguish cache and pool debug counters 2021-05-04 09:44:55 +02:00
meter lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
metrics log: register with standardized names 2021-05-11 15:17:55 +02:00
net net: introduce functions to verify L4 checksums 2021-07-02 19:03:03 +02:00
node log: register with standardized names 2021-05-11 15:17:55 +02:00
pci bus/pci: configure PCI bus master 2021-06-04 09:38:08 +02:00
pdump log: register with standardized names 2021-05-11 15:17:55 +02:00
pipeline pipeline: fix selector freeing 2021-07-21 13:51:17 +02:00
port lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
power power: check frequencies count before filling array 2021-07-24 10:09:58 +02:00
rawdev log: register with standardized names 2021-05-11 15:17:55 +02:00
rcu log: register with standardized names 2021-05-11 15:17:55 +02:00
regexdev lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
reorder lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
rib rib: fix max depth IPv6 lookup 2021-06-24 15:34:45 +02:00
ring ring: use WFE to wait for tail update on aarch64 2021-07-09 21:33:01 +02:00
sched sched: rework configuration failure handling 2021-07-24 10:58:58 +02:00
security lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
stack log: register with standardized names 2021-05-11 15:17:55 +02:00
table table: support selector table 2021-07-09 23:31:54 +02:00
telemetry telemetry: add extra log message on socket bind failure 2021-07-07 15:23:53 +02:00
timer lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
vhost vhost: fix crash on reconnect 2021-07-28 08:27:53 +02:00
meson.build lib: build testpmd dependencies on Windows 2021-07-02 19:03:03 +02:00