[dpdk-dev] Question about enable CBDMA with ioat PMD ?

Bruce Richardson bruce.richardson at intel.com
Wed Apr 14 15:21:53 CEST 2021


On Wed, Apr 14, 2021 at 01:52:14PM +0100, Liang Ma wrote:
> On Wed, Apr 14, 2021 at 11:48:03AM +0100, Bruce Richardson wrote:
> > On Wed, Apr 14, 2021 at 11:37:48AM +0100, Liang Ma wrote:
> > > On Tue, Apr 13, 2021 at 07:24:41PM +0100, Bruce Richardson wrote:
> > > > On Tue, Apr 13, 2021 at 06:36:38PM +0100, Liang Ma wrote:
> > > > > Hi Bruce, 
> > > > >    I look into current IOAT PMD. I found that looks only support the
> > > > >    latest DSA device which is part of SPR(Please correct me if I'm wrong).
> > > > >    However, there still is lots existing CPU that support previous CBDMA
> > > > >    Intel Quick-DATA technology. SPDK enable those device with uio. 
> > > > >    Any hint to enable those CBDMA device with IOAT PMD ? 
> > > > >    
> > > > 
> > > > Hi Liang,
> > > > 
> > > > These devices are still supported by the driver. In the latest releases the
> > > > new device support was added but no older device support was removed.
> > > > Please let us know if you do hit any problems with running it on the CBDMA
> > > > HW devices, because it should all still be working as before.
> > > > 
> > > > Regards,
> > > > /Bruce
> > > Hi Bruce, 
> > >    I hit a problem with CBDMA enabling. 
> > > 
> > >    1. I follow the DPDK  IOAT driver Doc, I bind 0000.04.0 device with
> > >       dpdk-devbind.py 
> > >    
> > >    2. I run dpdk-test without any parameter then dpdk-test complain with 
> > > 
> > >        EAL: VFIO support initialized
> > >        EAL: 0000:00:04.0 VFIO group is not viable! Not all devices in IOMMU
> > >        group bound to VFIO or unbound
> > >        Requested device 0000:00:04.0 cannot be used
> > > 
> > >    3. kernel boot parameter include the "intel_iommu=on"
> > > 
> > >    If I still need some extra iommu settings for CBDMA device ?
> > > 
> > It's an IOMMU limitation, not just for CBDMA but for other devices like
> > NICs too - you need to ensure all subfunctions on a device are all bound to
> > the same IOMMU group. So for the CBDMA instance, to use one channel with
> > vfio, the other channels on the device also need to be bound to vfio, or
> > else not bound to any driver. If bound to the kernel driver, there will be
> > IOMMU conflicts as we can't split the channels between kernel and userspace
> > address spaces.
> > 
> > /Bruce
> I bind whole device from 00:04.0 to 00:04.7.   ioat PMD  complain
> with  "ioat_rawdev_create(): ioat_rawdev_create: Channel appears
> locked".  Any hint?
> Regards
> Liang

That should be a warning only, I think and the device should still be
available. Is that not the case, or is there a later error?

/Bruce


More information about the dev mailing list