ethdev: verify reserved HW ring
authorFerruh Yigit <ferruh.yigit@intel.com>
Wed, 24 Jun 2020 09:35:20 +0000 (10:35 +0100)
committerFerruh Yigit <ferruh.yigit@intel.com>
Sat, 11 Jul 2020 04:18:52 +0000 (06:18 +0200)
commitcacd2bb786b80e19417d9ea4b85c90e97533d378
tree410707e74d9467f8d16a29dcf8df28ee9f071cce
parentbdb1d61690f77aef052fabcb8db6180e49ee5657
ethdev: verify reserved HW ring

Function 'rte_eth_dma_zone_reserve()' returns an existing memzone based
on name match, but other requested attributes are discarded.
This may cause driver using a memzone with wrong size or alignment.

Verify size, alignment and socket_id for matched memzone, and do not use
memzone if any one of the attributes are not justified.

It is possible to free the existing memzone and allocate again with the
requested attributes but it is better caller do the explicit free.

Reported-by: Renata Saiakhova <renata.saiakhova@ekinops.com>
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Reviewed-by: Andrew Rybchenko <arybchenko@solarflare.com>
lib/librte_ethdev/rte_ethdev.c