Powerpc: Kernel warn_on when enabling IOMMU_API

Bhushan Bharat-R65777 R65777 at freescale.com
Tue Aug 13 02:14:55 EST 2013



> -----Original Message-----
> From: Alexey Kardashevskiy [mailto:aik at ozlabs.ru]
> Sent: Monday, August 12, 2013 7:44 PM
> To: Bhushan Bharat-R65777
> Cc: benh at kernel.crashing.org; linuxppc-dev at lists.ozlabs.org
> Subject: Re: Powerpc: Kernel warn_on when enabling IOMMU_API
> 
> On 08/12/2013 08:20 PM, Bhushan Bharat-R65777 wrote:
> > And this simple fix work for me
> > diff --git a/arch/powerpc/kernel/iommu.c b/arch/powerpc/kernel/iommu.c
> > index b20ff17..8869b0d 100644
> > --- a/arch/powerpc/kernel/iommu.c
> > +++ b/arch/powerpc/kernel/iommu.c
> > @@ -48,6 +48,8 @@
> >  #include <asm/vio.h>
> >  #include <asm/tce.h>
> >
> > +#define DEBUG
> > +
> >  #define DBG(...)
> >
> >  static int novmerge;
> > @@ -871,7 +873,7 @@ void iommu_free_coherent(struct iommu_table *tbl, size_t
> size,
> >         }
> >  }
> >
> > -#ifdef CONFIG_IOMMU_API
> > +#ifdef SPAPR_TCE_IOMMU
> >  /*
> >   * SPAPR TCE API
> >   */
> > ----------------------
> 
> 
> And with this fix, what does "ls -laR /sys/kernel/iommu_groups/" print?

It shows the list of group id and respective devices:

root at p5040ds:~# ls -laR /sys/kernel/iommu_groups/
/sys/kernel/iommu_groups/:
total 0
drwxr-xr-x 15 root root 0 Sep  6 01:42 .
drwxr-xr-x  6 root root 0 Jan  1  1970 ..
drwxr-xr-x  3 root root 0 Sep  6 01:43 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 1
drwxr-xr-x  3 root root 0 Sep  6 01:43 10
drwxr-xr-x  3 root root 0 Sep  6 01:43 11
drwxr-xr-x  3 root root 0 Sep  6 01:43 12
drwxr-xr-x  3 root root 0 Sep  6 01:43 2
drwxr-xr-x  3 root root 0 Sep  6 01:43 3
drwxr-xr-x  3 root root 0 Sep  6 01:43 4
drwxr-xr-x  3 root root 0 Sep  6 01:43 5
drwxr-xr-x  3 root root 0 Sep  6 01:43 6
drwxr-xr-x  3 root root 0 Sep  6 01:43 7
drwxr-xr-x  3 root root 0 Sep  6 01:43 8
drwxr-xr-x  3 root root 0 Sep  6 01:43 9

/sys/kernel/iommu_groups/0:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/0/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe100300.dma -> ../../../../devices/ffe000000.soc/ffe100300.dma

/sys/kernel/iommu_groups/1:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/1/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe101300.dma -> ../../../../devices/ffe000000.soc/ffe101300.dma

/sys/kernel/iommu_groups/10:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/10/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe302000.jr -> ../../../../devices/ffe000000.soc/ffe300000.crypto/ffe302000.jr

/sys/kernel/iommu_groups/11:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/11/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe303000.jr -> ../../../../devices/ffe000000.soc/ffe300000.crypto/ffe303000.jr

/sys/kernel/iommu_groups/12:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/12/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe304000.jr -> ../../../../devices/ffe000000.soc/ffe300000.crypto/ffe304000.jr

/sys/kernel/iommu_groups/2:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/2/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe114000.sdhc -> ../../../../devices/ffe000000.soc/ffe114000.sdhc

/sys/kernel/iommu_groups/3:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/3/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe210000.usb -> ../../../../devices/ffe000000.soc/ffe210000.usb

/sys/kernel/iommu_groups/4:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/4/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe211000.usb -> ../../../../devices/ffe000000.soc/ffe211000.usb

/sys/kernel/iommu_groups/5:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/5/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe220000.sata -> ../../../../devices/ffe000000.soc/ffe220000.sata

/sys/kernel/iommu_groups/6:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/6/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe221000.sata -> ../../../../devices/ffe000000.soc/ffe221000.sata

/sys/kernel/iommu_groups/7:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/7/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 0001:00:00.0 -> ../../../../devices/ffe201000.pcie/pci0001:00/0001:00:00.0
lrwxrwxrwx 1 root root 0 Sep  6 01:43 0001:01:00.0 -> ../../../../devices/ffe201000.pcie/pci0001:00/0001:00:00.0/0001:01:00.0

/sys/kernel/iommu_groups/8:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/8/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 ffe301000.jr -> ../../../../devices/ffe000000.soc/ffe300000.crypto/ffe301000.jr

/sys/kernel/iommu_groups/9:
total 0
drwxr-xr-x  3 root root 0 Sep  6 01:43 .
drwxr-xr-x 15 root root 0 Sep  6 01:42 ..
drwxr-xr-x  2 root root 0 Sep  6 01:43 devices

/sys/kernel/iommu_groups/9/devices:
total 0
drwxr-xr-x 2 root root 0 Sep  6 01:43 .
drwxr-xr-x 3 root root 0 Sep  6 01:43 ..
lrwxrwxrwx 1 root root 0 Sep  6 01:43 0000:00:00.0 -> ../../../../devices/ffe200000.pcie/pci0000:00/0000:00:00.0
lrwxrwxrwx 1 root root 0 Sep  6 01:43 0000:01:00.0 -> ../../../../devices/ffe200000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0

-Bharat
> 
> 
> 
> --
> Alexey




More information about the Linuxppc-dev mailing list