From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4FD48A0521; Mon, 2 Nov 2020 12:57:16 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C0444C838; Mon, 2 Nov 2020 12:57:14 +0100 (CET) Received: from out0-147.mail.aliyun.com (out0-147.mail.aliyun.com [140.205.0.147]) by dpdk.org (Postfix) with ESMTP id 68F93C822 for ; Mon, 2 Nov 2020 12:57:11 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alibaba-inc.com; s=default; t=1604318229; h=Subject:To:From:Message-ID:Date:MIME-Version:Content-Type; bh=XnjrjgmI1vpN/wnXiKZGCUh8Me11uukecyUhapDDV54=; b=fRrSjQ93F6JZ/eoLDdrAfSLvT0Rsxsi5GpzunOvWwNo2qM9DPGZQk34WXIxStWsb9+3LaoR2Xf959a0s5pM7nfRPA2cTS9T9Jq1YnCLwouF3xSgc0f8/q7QMBlbiDH50QDD6hOZVg+g9A1111KH6Z6Mdo9Ptt4UfAEY2lgQ4k7g= X-Alimail-AntiSpam: AC=PASS; BC=-1|-1; BR=01201311R931e4; CH=green; DM=||false|; DS=||; FP=0|-1|-1|-1|0|-1|-1|-1; HT=ay29a033018047208; MF=huawei.xhw@alibaba-inc.com; NM=1; PH=DS; RN=8; SR=0; TI=SMTPD_---.IrbIf1Y_1604318227; Received: from 30.43.67.82(mailfrom:huawei.xhw@alibaba-inc.com fp:SMTPD_---.IrbIf1Y_1604318227) by smtp.aliyun-inc.com(127.0.0.1); Mon, 02 Nov 2020 19:57:08 +0800 To: ferruh.yigit@intel.com Cc: dev@dpdk.org, maxime.coquelin@redhat.com, anatoly.burakov@intel.com, david.marchand@redhat.com, zhihong.wang@intel.com, chenbo.xia@intel.com, grive@u256.net References: <68ecd941-9c56-4de7-fae2-2ad15bdfd81a@alibaba-inc.com> <1603381885-88819-1-git-send-email-huawei.xhw@alibaba-inc.com> From: "=?UTF-8?B?6LCi5Y2O5LyfKOatpOaXtuatpOWIu++8iQ==?=" Message-ID: <7469021a-8b28-0994-ea85-78310056eefb@alibaba-inc.com> Date: Mon, 02 Nov 2020 19:56:37 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.4.0 MIME-Version: 1.0 In-Reply-To: <1603381885-88819-1-git-send-email-huawei.xhw@alibaba-inc.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US Subject: Re: [dpdk-dev] [PATCH v5 0/3] support both PIO and MMIO BAR for virtio PMD X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Ferruh: Comments to this v5 version? On 2020/10/22 23:51, 谢华伟(此时此刻) wrote: > From: "huawei.xhw" > > Legacy virtio-pci only supports PIO BAR resource. As we need to create lots of > virtio devices and PIO resource on x86 is very limited, we expose MMIO BAR. > > Kernel supports both PIO and MMIO BAR for legacy virtio-pci device. We handles > different type of BAR in the similar way. > > In previous implementation, with igb_uio we get PIO address from igb_uio > sysfs entry; with uio_pci_generic, we get PIO address from > /proc/ioports. > For PIO/MMIO RW, there is different path for different drivers and arch. > For VFIO, PIO/MMIO RW is through syscall, which has big performance > issue. > On X86, it assumes only PIO is supported. > > All of the above is too much twisted. > This patch unifies the way to get both PIO and MMIO address for different driver > and arch, all from standard resource attr under pci sysfs. > > We distinguish PIO and MMIO by their address like how kernel does. It is ugly but works. > > v2 changes: > - add more explanation in the commit message > > v3 changes: > - fix patch format issues > > v4 changes: > - fixes for RTE_KDRV_UIO_GENERIC -> RTE_PCI_KDRV_UIO_GENERIC > > v5 changes: > - split into three seperate patches > > huawei.xhw (3): > PCI: use PCI standard sysfs entry to get PIO address > PCI: support MMIO in rte_pci_ioport_map/unap/read/write > PCI: don't use vfio ioctl call to access PIO resource > > drivers/bus/pci/linux/pci.c | 89 +------------------- > drivers/bus/pci/linux/pci_uio.c | 177 ++++++++++++++++++++++++++++------------ > 2 files changed, 128 insertions(+), 138 deletions(-) >