On Thu, Oct 25, 2018 at 10:29 AM Burakov, Anatoly <anatoly.bura...@intel.com> wrote:
> On 25-Oct-18 7:00 AM, Alejandro Lucero wrote: > > On Thu, Oct 25, 2018 at 6:30 AM Alejandro Lucero < > > alejandro.luc...@netronome.com> wrote: > > > >> > >> > >> On Thu, Oct 25, 2018 at 12:11 AM Thomas Monjalon <tho...@monjalon.net> > >> wrote: > >> > >>> Hi, > >>> > >>> 19/10/2018 18:43, Alejandro Lucero: > >>>> --- a/drivers/bus/pci/linux/pci.c > >>>> +++ b/drivers/bus/pci/linux/pci.c > >>>> + char devname[RTE_DEV_NAME_MAX_LEN] = {0}; > >>> > >>> I think "" would be more appropriate than {0}. > >>> > >>>> const struct rte_intr_handle *intr_handle = > &device->intr_handle; > >>>> > >>>> - switch (intr_handle->type) { > >>>> - case RTE_INTR_HANDLE_UIO: > >>>> - case RTE_INTR_HANDLE_UIO_INTX: > >>>> + switch (device->kdrv) { > >>>> + case RTE_KDRV_IGB_UIO: > >>>> return pci_uio_read_config(intr_handle, buf, len, > offset); > >>>> - > >>>> -#ifdef VFIO_PRESENT > >>> > >>> Why this #ifdef is removed? > >>> > >>> > >> Because it is not needed. VFIO is present if the kdrv field tells us so. > >> > > > > And at this point it is clear VFIO is present if that is the case. > > Otherwise this code is not executed. > > Actually, i think Thomas is right here. The #ifdef shouldn't be removed, > because if this is not defined, the function is simply not present - see > pci_init.h, VFIO-related functions are only declared if VFIO_PRESENT is > defined. > > Right. I did not try to compile without VFIO, but I have just done this and it fails. I will send another version using the #ifdef for VFIO. Thanks > > > > > >> > >> > >>>> - case RTE_INTR_HANDLE_VFIO_MSIX: > >>>> - case RTE_INTR_HANDLE_VFIO_MSI: > >>>> - case RTE_INTR_HANDLE_VFIO_LEGACY: > >>>> + case RTE_KDRV_VFIO: > >>>> return pci_vfio_read_config(intr_handle, buf, len, > >>> offset); > >>>> -#endif > >>>> default: > >>>> + rte_pci_device_name(&device->addr, devname, > >>>> + RTE_DEV_NAME_MAX_LEN); > >>>> RTE_LOG(ERR, EAL, > >>>> - "Unknown handle type of fd %d\n", > >>>> - intr_handle->fd); > >>>> + "Unknown driver type for %s\n", devname); > >>>> return -1; > >>>> } > >>> > >>> > >>> > >>> > > > > > -- > Thanks, > Anatoly >