2015-07-17 14:16, Cunming Liang:
> +#ifdef RTE_NEXT_ABI
> +extern int
> +rte_intr_efd_enable(struct rte_intr_handle *intr_handle, uint32_t nb_efd);
> +#else
> +static inline int
> +rte_intr_efd_enable(struct rte_intr_handle *intr_handle, uint32_t nb_efd)
> +{
> +     RTE_SET_USED(intr_handle);
> +     RTE_SET_USED(nb_efd);
> +     return 0;
> +}
> +#endif
[...]
> +#ifdef RTE_NEXT_ABI
> +extern void
> +rte_intr_efd_disable(struct rte_intr_handle *intr_handle);
> +#else
> +static inline void
> +rte_intr_efd_disable(struct rte_intr_handle *intr_handle)
> +{
> +     RTE_SET_USED(intr_handle);
> +}
> +#endif
[...]
> +#ifdef RTE_NEXT_ABI
> +static inline int
> +rte_intr_dp_is_en(struct rte_intr_handle *intr_handle)
> +{
> +     return !(!intr_handle->nb_efd);
> +}
> +#else
> +static inline int
> +rte_intr_dp_is_en(struct rte_intr_handle *intr_handle)
> +{
> +     RTE_SET_USED(intr_handle);
> +     return 0;
> +}
> +#endif
[...]
> +#ifdef RTE_NEXT_ABI
> +static inline int
> +rte_intr_allow_others(struct rte_intr_handle *intr_handle)
> +{
> +     return !!(intr_handle->max_intr - intr_handle->nb_efd);
> +}
> +#else
> +static inline int
> +rte_intr_allow_others(struct rte_intr_handle *intr_handle)
> +{
> +     RTE_SET_USED(intr_handle);
> +     return 1;
> +}
> +#endif

Why these #else cases?

> --- a/lib/librte_eal/linuxapp/eal/rte_eal_version.map
> +++ b/lib/librte_eal/linuxapp/eal/rte_eal_version.map
> @@ -117,6 +117,10 @@ DPDK_2.1 {
>  
>       rte_epoll_ctl;
>       rte_epoll_wait;
> +     rte_intr_allow_others;
> +     rte_intr_dp_is_en;
> +     rte_intr_efd_enable;
> +     rte_intr_efd_disable;

If RTE_NEXT_ABI is disabled, these symbols do not exist.
An alternate .map would be needed.

Reply via email to