[dpdk-dev] [PATCH v3 6/6] DPDK changes for accommodating ENIC PMD
david.marchand at 6wind.com
Mon Nov 24 17:15:22 CET 2014
Mmm, I am not that familiar with vfio code, but I would say that there is
something buggy in pci_vfio_map_resource() when compared
Is not there a problem with finding the right index of dev->mem_resource
On Mon, Nov 24, 2014 at 4:51 PM, Sujith Sankar (ssujith) <ssujith at cisco.com>
> Hi David,
> During the testing, I saw that the length field was 0. ENIC PMD
> validates the length of the BAR against a max value.
> In order to get the length in the resource structure, I added this
> From: David Marchand <david.marchand at 6wind.com>
> Date: Monday, 24 November 2014 4:33 pm
> To: "Sujith Sankar (ssujith)" <ssujith at cisco.com>
> Cc: "dev at dpdk.org" <dev at dpdk.org>, "Prasad Rao (prrao)" <prrao at cisco.com>
> Subject: Re: [dpdk-dev] [PATCH v3 6/6] DPDK changes for accommodating
> ENIC PMD
> Hello Sujith,
> On Sun, Nov 23, 2014 at 5:08 PM, Sujith Sankar <ssujith at cisco.com> wrote:
>> diff --git a/lib/librte_eal/linuxapp/eal/eal_pci_vfio.c
>> index c776ddc..6bf8f2e 100644
>> --- a/lib/librte_eal/linuxapp/eal/eal_pci_vfio.c
>> +++ b/lib/librte_eal/linuxapp/eal/eal_pci_vfio.c
>> @@ -736,6 +736,7 @@ pci_vfio_map_resource(struct rte_pci_device *dev)
>> maps[i].offset = reg.offset;
>> maps[i].size = reg.size;
>> dev->mem_resource[i].addr = bar_addr;
>> + dev->mem_resource[i].len = reg.size;
>> /* if secondary process, do not set up interrupts */
> Not sure I understand why you need to overwrite the length value.
> This is supposed to be initialised before by "generic" code.
> This looks like a hack or a workaround.
> Can you elaborate on this change ?
> David Marchand
More information about the dev