[dpdk-dev] [RFC] igb_uio: deprecate iomem and ioport mapping
Stephen Hemminger
stephen at networkplumber.org
Sat Dec 3 00:47:06 CET 2016
On Thu, 1 Sep 2016 02:16:37 +0000
Jianfeng Tan <jianfeng.tan at intel.com> wrote:
> Previously in igb_uio, iomem is mapped, and both ioport and io mem
> are recorded into uio framework, which is duplicated and makes the
> code too complex.
>
> For iomem, DPDK user space code never opens or reads files under
> /sys/pci/bus/devices/xxxx:xx:xx.x/uio/uioY/maps/. Instead,
> /sys/pci/bus/devices/xxxx:xx:xx.x/resourceY are used to map device
> memory.
>
> For ioport, non-x86 platforms cannot read from files under
> /sys/pci/bus/devices/xxxx:xx:xx.x/uio/uioY/portio/ directly, because
> non-x86 platforms need to map port region for access in user space,
> see non-x86 version pci_uio_ioport_map(). x86 platforms can use the
> the same way as uio_pci_generic.
>
> This patch deprecates iomem and ioport mapping in igb_uio kernel
> module, and adjusts the iomem implementation in both igb_uio and
> uio_pci_generic:
> - for x86 platform, get ports info from /proc/ioports;
> - for non-x86 platform, map and get ports info by pci_uio_ioport_map().
>
> Note: this will affect those applications who are using files under
> /sys/pci/bus/devices/xxxx:xx:xx.x/uio/uioY/maps/ and
> /sys/pci/bus/devices/xxxx:xx:xx.x/uio/uioY/portio/.
>
> Signed-off-by: Jianfeng Tan <jianfeng.tan at intel.com>
What about people using older kernels with the new DPDK EAL and
vice versa? It makes sense to make igb_uio generic for non DPDK
usage, so it should probably follow the other UIO drivers.
More information about the dev
mailing list