Re: [PATCH 00/20] iommu/amd: Use generic IOVA allocator

2016-07-13 Thread Joerg Roedel
On Wed, Jul 13, 2016 at 05:44:24PM +0800, Wan Zongshun wrote:
> 
> 
> On 2016年07月12日 18:55, Joerg Roedel wrote:
> >This branch boots now on my Kaveri and Carrizo system. Can you please
> >give it a test too?
> 
> Joerg, I have tested the patches, it works now.

Great, thanks a lot for your testing.



Joerg
___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Re: [PATCH 00/20] iommu/amd: Use generic IOVA allocator

2016-07-13 Thread Wan Zongshun



On 2016年07月12日 18:55, Joerg Roedel wrote:

Hey Vincent,

On Tue, Jul 12, 2016 at 05:03:08PM +0800, Wan Zongshun wrote:

Currently, those patches can not work at my eCarrizo board.
When I merged your patches, boot failed, and no any info print to me.
I set iommu=pt, it also does not work; set iommu=soft, boot ok.

When I removed those patches, kernel boot ok.

This eCarrizo board uart doesnot work, so I can not get useful
information from kernel by uart console, I also set 'text' in boot
option, but still cannot print any log.


Thanks for your testing. The issue turned out to be an older bug, which
just got uncovered by these patches. I updated the branch at

git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux.git 
amd-iommu-iova

This branch boots now on my Kaveri and Carrizo system. Can you please
give it a test too?


Joerg, I have tested the patches, it works now.



Thanks,

Joerg

___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu



___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Re: [PATCH 00/20] iommu/amd: Use generic IOVA allocator

2016-07-12 Thread Joerg Roedel
Hey Vincent,

On Tue, Jul 12, 2016 at 05:03:08PM +0800, Wan Zongshun wrote:
> Currently, those patches can not work at my eCarrizo board.
> When I merged your patches, boot failed, and no any info print to me.
> I set iommu=pt, it also does not work; set iommu=soft, boot ok.
> 
> When I removed those patches, kernel boot ok.
> 
> This eCarrizo board uart doesnot work, so I can not get useful
> information from kernel by uart console, I also set 'text' in boot
> option, but still cannot print any log.

Thanks for your testing. The issue turned out to be an older bug, which
just got uncovered by these patches. I updated the branch at

git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux.git 
amd-iommu-iova

This branch boots now on my Kaveri and Carrizo system. Can you please
give it a test too?

Thanks,

Joerg

___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu


[PATCH 00/20] iommu/amd: Use generic IOVA allocator

2016-07-08 Thread Joerg Roedel
Hi,

here is a patch-set to make the AMD IOMMU driver use the
generic IOVA allocator, which is already used in the Intel
VT-d driver and a few other places.

The main reason for the conversion is to make the driver
benefit from the recent scalability improvements to the IOVA
code. Some of these improvements happened in the Intel VT-d
driver, these are not re-used but, for now, re-implemented.

This leaves more room for merging things together into
common code for the future.

The allocator that was previously used will be removed with
these patches.

Please review.

Thanks,

Joerg

Joerg Roedel (20):
  iommu: Add apply_dm_region call-back to iommu-ops
  iommu/amd: Select IOMMU_IOVA for AMD IOMMU
  iommu/amd: Allocate iova_domain for dma_ops_domain
  iommu/amd: Create a list of reserved iova addresses
  iommu/amd: Implement apply_dm_region call-back
  iommu/amd: Pass gfp-flags to iommu_map_page()
  iommu/amd: Remove special mapping code for dma_ops path
  iommu/amd: Make use of the generic IOVA allocator
  iommu/amd: Remove other remains of old address allocator
  iommu/amd: Remove align-parameter from __map_single()
  iommu/amd: Set up data structures for flush queue
  iommu/amd: Allow NULL pointer parameter for domain_flush_complete()
  iommu/amd: Implement flush queue
  iommu/amd: Implement timeout to flush unmap queues
  iommu/amd: Introduce dir2prot() helper
  iommu/amd: Optimize map_sg and unmap_sg
  iommu/amd: Use dev_data->domain in get_domain()
  iommu/amd: Handle IOMMU_DOMAIN_DMA in ops->domain_free call-back
  iommu/amd: Flush iova queue before releasing dma_ops_domain
  iommu/amd: Use container_of to get dma_ops_domain

 drivers/iommu/Kconfig   |   1 +
 drivers/iommu/amd_iommu.c   | 976 
 drivers/iommu/amd_iommu_types.h |   1 -
 drivers/iommu/iommu.c   |   3 +
 include/linux/iommu.h   |   3 +
 5 files changed, 387 insertions(+), 597 deletions(-)

-- 
1.9.1

___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu