On 8/25/2021 12:47 PM, Burakov, Anatoly wrote: > On 25-Aug-21 12:27 PM, Xuan Ding wrote: >> Currently, the VFIO subsystem will compact adjacent DMA regions for the >> purposes of saving space in the internal list of mappings. This has a >> side effect of compacting two separate mappings that just happen to be >> adjacent in memory. Since VFIO implementation on IA platforms also does >> not allow partial unmapping of memory mapped for DMA, the current DPDK >> VFIO implementation will prevent unmapping of accidentally adjacent >> maps even though it could have been unmapped [1]. >> >> The proper fix for this issue is to change the VFIO DMA mapping API to >> also include page size, and always map memory page-by-page. >> >> [1] https://mails.dpdk.org/archives/dev/2021-July/213493.html >> >> Signed-off-by: Xuan Ding <xuan.d...@intel.com> >> --- >> doc/guides/rel_notes/deprecation.rst | 3 +++ >> 1 file changed, 3 insertions(+) >> >> diff --git a/doc/guides/rel_notes/deprecation.rst >> b/doc/guides/rel_notes/deprecation.rst >> index 76a4abfd6b..272ffa993e 100644 >> --- a/doc/guides/rel_notes/deprecation.rst >> +++ b/doc/guides/rel_notes/deprecation.rst >> @@ -287,3 +287,6 @@ Deprecation Notices >> reserved bytes to 2 (from 3), and use 1 byte to indicate warnings and >> other >> information from the crypto/security operation. This field will be used >> to >> communicate events such as soft expiry with IPsec in lookaside mode. >> + >> + * vfio: the functions `rte_vfio_container_dma_map` and >> `rte_vfio_container_dma_unmap` >> + will be amended to include page size. This change is targeted for DPDK >> 21.11. >> > > Acked-by: Anatoly Burakov <anatoly.bura...@intel.com> >
Techboard decision was to add a new API, instead of updating existing ones, to not break the apps using this API. @Xuan, @Anatoly, can you please confirm if this will solve your problem?