On 8/22/2019 9:18 AM, Jakub Grajciar wrote: > Zero-copy slave support for memif PMD. > Slave interface exposes DPDK memory to > master interface. Only single file segments > are supported (EAL option --single-file-segments). > > Signed-off-by: Jakub Grajciar <jgraj...@cisco.com>
Reviewed-by: Ferruh Yigit <ferruh.yi...@intel.com> Since bind() issue solved, we can continue with the patch. <...> > @@ -131,7 +132,7 @@ struct pmd_process_private { > * @param proc_private > * device process private data > */ > -void memif_free_regions(struct pmd_process_private *proc_private); > +void memif_free_regions(struct rte_eth_dev *dev); > > /** > * Finalize connection establishment process. Map shared memory file > diff --git a/lib/librte_eal/common/eal_common_mcfg.c > b/lib/librte_eal/common/eal_common_mcfg.c > index 066549432..03d9d472d 100644 > --- a/lib/librte_eal/common/eal_common_mcfg.c > +++ b/lib/librte_eal/common/eal_common_mcfg.c > @@ -161,3 +161,10 @@ rte_mcfg_timer_unlock(void) > struct rte_mem_config *mcfg = rte_eal_get_configuration()->mem_config; > rte_spinlock_unlock(&mcfg->tlock); > } > + > +uint32_t > +rte_mcfg_get_single_file_segments(void) > +{ > + struct rte_mem_config *mcfg = rte_eal_get_configuration()->mem_config; > + return mcfg->single_file_segments; > +} > diff --git a/lib/librte_eal/common/include/rte_eal_memconfig.h > b/lib/librte_eal/common/include/rte_eal_memconfig.h > index 34b0e44a0..9bb4a57f8 100644 > --- a/lib/librte_eal/common/include/rte_eal_memconfig.h > +++ b/lib/librte_eal/common/include/rte_eal_memconfig.h > @@ -109,6 +109,16 @@ __rte_experimental > void > rte_mcfg_timer_unlock(void); > > +/** > + * @warning > + * @b EXPERIMENTAL: this API may change without prior notice > + * > + * Get the single_file_segments parameter value from memory configuration. > + */ > +__rte_experimental > +uint32_t > +rte_mcfg_get_single_file_segments(void); > + > #ifdef __cplusplus > } > #endif > diff --git a/lib/librte_eal/rte_eal_version.map > b/lib/librte_eal/rte_eal_version.map > index 7cbf82d37..c2b9d473f 100644 > --- a/lib/librte_eal/rte_eal_version.map > +++ b/lib/librte_eal/rte_eal_version.map > @@ -418,5 +418,6 @@ EXPERIMENTAL { > rte_lcore_to_cpu_id; > rte_mcfg_timer_lock; > rte_mcfg_timer_unlock; > + rte_mcfg_get_single_file_segments; This should be moved to 19.11 block in experimental cc'ed Dave for eal part, @Dave, change looks straight forward but can you please check/comment?