On 16/12/14 4:54 am, "Thomas Monjalon" <thomas.monjalon at 6wind.com> wrote:
>2014-12-12 13:48, Sujith Sankar: >> This patch corrects the usage of the flag VFIO_PRESENT in enic driver. > >Please, could you explain why the flag VFIO_PRESENT was not well used? Without including eal_vfio.h, VFIO_PRESENT is not available in enic. Hence VFIO specific code in enic was not getting compiled and some errors were generated during run-time. > >> This has uncovered a few warnings, and this patch corrects those too. >[...] >> --- a/lib/librte_pmd_enic/enic_main.c >> +++ b/lib/librte_pmd_enic/enic_main.c >> @@ -39,6 +39,7 @@ >> #include <sys/mman.h> >> #include <fcntl.h> >> #include <libgen.h> >> +#include <sys/ioctl.h> >> >> #include <rte_pci.h> >> #include <rte_memzone.h> >> @@ -46,6 +47,7 @@ >> #include <rte_mbuf.h> >> #include <rte_string_fns.h> >> #include <rte_ethdev.h> >> +#include <eal_vfio.h> > >This header was not designed to be included by PMDs. >It will break compilation on BSD. Is there an alternative to make VFIO_PRESENT available in enic? Please advise. Thanks, -Sujith > >> #include "enic_compat.h" >> #include "enic.h" >> @@ -561,6 +563,7 @@ enic_free_consistent(__rte_unused struct >>rte_pci_device *hwdev, >> /* Nothing to be done */ >> } >> >> +#ifndef VFIO_PRESENT >> static void >> enic_intr_handler(__rte_unused struct rte_intr_handle *handle, >> void *arg) >> @@ -572,6 +575,7 @@ enic_intr_handler(__rte_unused struct >>rte_intr_handle *handle, >> >> enic_log_q_error(enic); >> } >> +#endif > >-- >Thomas