From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Burakov, Anatoly" Subject: Re: [PATCH v5] vfio: fix workaround of BAR mapping Date: Mon, 30 Jul 2018 11:03:13 +0100 Message-ID: References: <20180712030833.4887-1-t.yoshimura8869@gmail.com> <20180720081347.6123-1-t.yoshimura8869@gmail.com> <30652783.zuAJVELDdt@xps> <20180729084457.GA8905@jerin> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Cc: Takeshi Yoshimura , dev@dpdk.org To: Jerin Jacob , Thomas Monjalon Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id EAF3C4F94 for ; Mon, 30 Jul 2018 12:03:16 +0200 (CEST) In-Reply-To: Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 30-Jul-18 9:51 AM, Burakov, Anatoly wrote: > On 29-Jul-18 9:44 AM, Jerin Jacob wrote: >> -----Original Message----- >>> Date: Thu, 26 Jul 2018 11:35:43 +0200 >>> From: Thomas Monjalon >>> To: Takeshi Yoshimura >>> Cc: dev@dpdk.org, Anatoly Burakov >>> Subject: Re: [dpdk-dev] [PATCH v5] vfio: fix workaround of BAR mapping >>> >>> >>> 20/07/2018 10:13, Takeshi Yoshimura: >>>> Currently, VFIO will try to map around MSI-X table in the BARs. When >>>> MSI-X table (page-aligned) size is equal to (page-aligned) size of BAR, >>>> VFIO will just skip the BAR. >>>> >>>> Recent kernel versions will allow VFIO to map the entire BAR containing >>>> MSI-X tables (*), so instead of trying to map around the MSI-X vector >>>> or skipping the BAR entirely if it's not possible, we can now try >>>> mapping the entire BAR first. If mapping the entire BAR doesn't >>>> succeed, fall back to the old behavior of mapping around MSI-X table or >>>> skipping the BAR. >>>> >>>> (*): "vfio-pci: Allow mapping MSIX BAR", >>>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/ >>>> commit/?id=a32295c612c57990d17fb0f41e7134394b2f35f6 >>>> >>>> Fixes: 90a1633b2347 ("eal/linux: allow to map BARs with MSI-X tables") >>>> >>>> Signed-off-by: Takeshi Yoshimura >>>> Reviewed-by: Anatoly Burakov >> >> >> This change set breaks thunderx/octeontx platform with following >> error.(Tested with 4.9.0 kernel) >> >> EAL:   probe driver: 177d:a034 net_thunderx >> EAL:   using IOMMU type 1 (Type 1) >> EAL: pci_map_resource(): cannot mmap(44, 0xffff60200000, 0x200000, >> 0x40000000000): Invalid argument (0xffffffffffffffff) >> EAL: PCI device 0001:01:00.2 on NUMA socket 0 >> EAL:   probe driver: 177d:a034 net_thunderx >> EAL: pci_map_resource(): cannot mmap(47, 0xffff60600000, 0x200000, >> 0x40000000000): Invalid argument (0xffffffffffffffff) >> >> According Linux kernel change, user space application suppose to use >> VFIO_REGION_INFO_CAP_MSIX_MAPPABLE >> capability to detect this feature to work < 4.15 kernel. Right? if so, >> Why we >> are doing this retry based logic? > > I don't think anything's broken there - just a gratuitous error message. > > But yes, i seem to have missed the region info flag. It was my > suggestion to use the retry logic. I'll submit a patch fixing this. > The patch to fix it involves way more work than i am comfortable with submitting to rc3, so i believe we should revert this patch and postpone the change to 18.11. -- Thanks, Anatoly