[dpdk-dev] [dpdk-stable] [PATCH] mbuf: fix external mbufs pool boundaries

Thomas Monjalon thomas at monjalon.net
Thu Jun 11 09:27:16 CEST 2020


08/06/2020 09:50, Olivier Matz:
> On Mon, Jun 01, 2020 at 03:24:16PM +0000, Alexander Kozyrev wrote:
> > Memzones are created in testpmd in order to test external data
> > buffers functionality. Each memzone is 2Mb in size and divided among
> > the pool of external memory buffers.
> > 
> > Memzone may not always be fully utilized because mbufs size can vary
> > and some space can be left unused at the tail of a memzone. This is
> > not handled properly and mbuf can get the address of this leftover
> > space since this address is still valid (part of memzone), but there
> > is not enough space to fit the whole packet data. As a result packet
> > data may overflow and cause the memory corruption.
> > 
> > Take mbuf size into account when distributing memory addresses from
> > a memzone to external mbufs. Skip the remaining tail in case there
> > is not enough room for a packet and move to a next memzone instead.
> > 
> > Fixes: 6c8e50c2e5 ("mbuf: create pool with external memory buffers")
> > Cc: stable at dpdk.org
> > Signed-off-by: Alexander Kozyrev <akozyrev at mellanox.com>
> > Acked-by: Viacheslav Ovsiienko <viacheslavo at mellanox.com>
> 
> Acked-by: Olivier Matz <olivier.matz at 6wind.com>

Applied, thanks

Note: there is a blank line between Fixes/Cc block and Signed/Acked block.




More information about the dev mailing list