On Fri, Oct 25, 2019 at 6:45 PM Yigit, Ferruh
<ferruh.yi...@linux.intel.com> wrote:
>
> 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).

Do you really want this additional configuration in your driver or
can't you enable/disable the functional
> >
> > 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.

I would prefer you describe what this actually means.
We don't really care about the value itself.


> > + */
> > +__rte_experimental
> > +uint32_t

And a boolean is enough, this is a flag.


> > +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

+1


> cc'ed Dave for eal part,
> @Dave, change looks straight forward but can you please check/comment?

I don't like the name of this API, since it gives the impression it
returns "segments"..
But on the other hand, this is aligned with the mcfg field: people
touching the internals have more chances to see there is an exported
API.

Cc: Anatoly (but I think he is off for this week).

Other than that I am ok with this change.


-- 
David Marchand

  • Re: [dpdk-de... Ferruh Yigit
    • Re: [dp... Jakub Grajciar -X (jgrajcia - PANTHEON TECHNOLOGIES at Cisco)
    • Re: [dp... Yigit, Ferruh
      • Re:... David Marchand
        • ... Jakub Grajciar -X (jgrajcia - PANTHEON TECH SRO at Cisco)
          • ... David Marchand

Reply via email to