On 25-Jun-19 12:15 PM, Jerin Jacob Kollanukkaran wrote:
-----Original Message-----
From: dev <dev-boun...@dpdk.org> On Behalf Of Burakov, Anatoly
Sent: Tuesday, June 25, 2019 3:30 PM
To: Vamsi Krishna Attunuru <vattun...@marvell.com>; dev@dpdk.org
Cc: ferruh.yi...@intel.com; olivier.m...@6wind.com;
arybche...@solarflare.com
Subject: Re: [dpdk-dev] [PATCH v6 0/4] add IOVA = VA support in KNI
On 25-Jun-19 4:56 AM, vattun...@marvell.com wrote:
From: Vamsi Attunuru <vattun...@marvell.com>
----
V6 Changes:
* Added new mempool flag to ensure mbuf memory is not scattered across
page boundaries.
* Added KNI kernel module required PCI device information.
* Modified KNI example application to create mempool with new mempool
flag.
Others can chime in, but my 2 cents: this reduces the usefulness of KNI because
it limits the kinds of mempools one can use them with, and makes it so that the
code that works with every other PMD requires changes to work with KNI.
# One option to make this flag as default only for packet mempool(not allow
allocate on page boundary).
In real world the overhead will be very minimal considering Huge page size is
1G or 512M
# Enable this flag explicitly only IOVA = VA mode in library. Not need to
expose to application
# I don’t think, there needs to be any PMD specific change to make KNI with
IOVA = VA mode
# No preference on flags to be passed by application vs in library. But IMO
this change would be
needed in mempool support KNI in IOVA = VA mode.
I would be OK to just make it default behavior to not cross page
boundaries when allocating buffers. This would solve the problem for KNI
and for any other use case that would rely on PA-contiguous buffers in
face of IOVA as VA mode.
We could also add a flag to explicitly allow page crossing without also
making mbufs IOVA-non-contiguous, but i'm not sure if there are use
cases that would benefit from this.
--
Thanks,
Anatoly
--
Thanks,
Anatoly