From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Sujith Sankar (ssujith)" Subject: Re: [PATCH] enic: corrected the usage of VFIO_PRESENT Date: Tue, 16 Dec 2014 10:40:54 +0000 Message-ID: References: <1418372303-31565-1-git-send-email-ssujith@cisco.com> <5911790.4rCTPaIceN@xps13> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Cc: "dev-VfR2kkLFssw@public.gmane.org" To: "Burakov, Anatoly" , Thomas Monjalon Return-path: In-Reply-To: Content-Language: en-US Content-ID: List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" On 16/12/14 4:06 pm, "Burakov, Anatoly" wrote: >> -----Original Message----- >> From: Sujith Sankar (ssujith) [mailto:ssujith-FYB4Gu1CFyUAvxtiuMwx3w@public.gmane.org] >> Sent: Tuesday, December 16, 2014 10:34 AM >> To: Burakov, Anatoly; Thomas Monjalon >> Cc: dev-VfR2kkLFssw@public.gmane.org >> Subject: Re: [dpdk-dev] [PATCH] enic: corrected the usage of >>VFIO_PRESENT >>=20 >>=20 >>=20 >> On 16/12/14 3:52 pm, "Burakov, Anatoly" >> wrote: >>=20 >> >> On 16/12/14 4:54 am, "Thomas Monjalon" >> >> >> 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 >> >> >> #include >> >> >> #include >> >> >> +#include >> >> >> >> >> >> #include >> >> >> #include >> >> >> @@ -46,6 +47,7 @@ >> >> >> #include >> >> >> #include >> >> >> #include >> >> >> +#include >> >> > >> >> >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 >> > >> >Hi Sujith >> > >> >Thomas is correct, VFIO code is designed to be EAL-only (mainly because >> >it's Linuxapp-specific, and PMD's are intended to be cross-platform at >> >least when it comes to compilation). Whatever it is that you're working >> >around is better fixed in the EAL itself rather than in the PMD. >>=20 >> I agree with you and Thomas. Let me find the root cause for the false >>trigger. >>=20 >> Thanks, >> -Sujith >>=20 > >You may find it in EAL VFIO interrupts code. When VFIO enables some >interrupt types, it manually sends a trigger. Normally, this "trigger" >just enables interrupts, but maybe for ENIC it's different. I therefore >suggest you to look there first. Ok. Thanks for the info, Anatoly. ENIC does not need that trigger. Let me take a look at that first. Thanks, -Sujith > >Thanks, >Anatoly