On Tue, 25 Sep 2018 15:16:04 +0200
Damjan Marion <dmar...@me.com> wrote:

> > On 25 Sep 2018, at 15:03, Stephen Hemminger <step...@networkplumber.org> 
> > wrote:
> > 
> > I noticed that the PCI domain in VPP is limited to 16 bits.
> > This is a problem on Azure/Hyper-V and other virtual environments.
> > In these environments, the host will generate a 32 bit synthetic value
> > when passing a PCI device through. The Linux kernel has 32 bit PCI 
> > domains, and libpciaccess used by X now has 32 bit PCI domains.
> > The PCI specification says domain is supposed to be 32 bit so this is
> > not just Linux/Hyper-V issue.
> > 
> > Unfortunately, VPP has 16 bit PCI domain hard coded. This is not a show
> > stopper now because the main use of PCI is for SR-IOV passthrough. In the
> > passthrough case, the VF is taken over by other devices and the actual PCI
> > value is not something VPP has to worry about directly. With DPDK today,
> > this is done via TAP/FAILSAFE/VDEV_NETVSC devices. The issue would only be
> > visible with direct device assignment.
> > 
> > Fixing it in not too hard (only in pci.h) but it would cause the device
> > union to get larger and all the places as_u32 is used would have to become
> > as_u64. Mostly mechanical, but always a possibility of errors.  
> 
> Feel free to submit patch which moves to u64, i don't expect major issues.
> This is purely historic....
> 

I started on this, but the one sticking point is that there are places using
pci address as a key into hash_get. The key is a uword which could be only
32 bits on some architectures. It shouldn't be a complete blocker but
it does create potential issues.
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#10674): https://lists.fd.io/g/vpp-dev/message/10674
Mute This Topic: https://lists.fd.io/mt/26219976/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to