[dpdk-dev] [PATCH v6 1/2] bus/pci: use PCI standard sysfs entry to get PIO address
huawei.xhw at alibaba-inc.com
Wed Feb 24 16:29:12 CET 2021
On 2021/2/24 20:49, David Marchand wrote:
> On Sun, Feb 21, 2021 at 4:58 PM 谢华伟(此时此刻） <huawei.xhw at alibaba-inc.com> wrote:
>> On 2021/2/18 17:33, David Marchand wrote:
>>> On Fri, Jan 29, 2021 at 4:19 AM 谢华伟(此时此刻） <huawei.xhw at alibaba-inc.com> wrote:
>>>> From: "huawei.xhw" <huawei.xhw at alibaba-inc.com>
>>>> Currently virtio PMD asssumes legacy device uses PIO bar.
>>>> There are three ways to get PIO(PortIO) address for virtio legacy device.
>>>> under igb_uio, get pio address from uio/uio# sysfs attribute
>>>> under uio_pci_generic:
>>>> for X86, get PIO address from /proc/ioport
>>>> for other ARCH, get PIO address from standard PCI sysfs attribute
>>>> Actually, igb_uio sysfs attribute exports exactly the same thing as standard PCI sysfs, i.e,
>>>> This patch fixes these messy things, and uses standard PCI sysfs attribute.
>>> I can not find what is being fixed.
>>> Could you elaborate?
>> Maybe i wrongly use the word fix? With this patch, different drivers
>> use the same way to get IO address for virtio device.
>> Previously different driver get IO address with different method.
> The commitlog is confusing, mentioning pci_dev->resource (I guess
> from the kernel sources?) and talking about a fix while it works fine
> so far.
> So this is a refactoring.
Ok, will change the word fix.
> Did you check that virtio devices bound to uio_pci_generic still works
> with legacy mode + PIO?
I had verified PIO, might under igb_uio driver.
Theoretically it works with uio_pci_generic driver. I could do the test
if needed. Give me some time. Have to create a legacy VM. Now bars in
virtio device in the cloud are basically mmio.
More information about the dev