aboutsummaryrefslogtreecommitdiff
path: root/arch/x86/kernel/amd_iommu.c
AgeCommit message (Collapse)Author
2009-01-03AMD IOMMU: remove now unnecessary #ifdefsJoerg Roedel
The #ifdef's are no longer necessary when the iommu-api and the amd iommu updates are merged together. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: prealloc_protection_domains should be staticJaswinder Singh Rajput
Impact: cleanup, reduce kernel size a bit, avoid sparse warning Fixes sparse warning: arch/x86/kernel/amd_iommu.c:1299:6: warning: symbol 'prealloc_protection_domains' was not declared. Should it be static? Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com> Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add statistics about total number of map requestsJoerg Roedel
Impact: see total number of map requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add statistics about allocated io memoryJoerg Roedel
Impact: see amount of allocated io memory in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for domain tlb flushesJoerg Roedel
Impact: see number of domain tlb flushes in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for single iommu domain tlb flushesJoerg Roedel
Impact: see number of single iommu domain tlb flushes in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for cross-page requestJoerg Roedel
Impact: see number of requests for more than one page in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for free_coherent requestsJoerg Roedel
Impact: see number of free_coherent requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for alloc_coherent requestsJoerg Roedel
Impact: see number of alloc_coherent requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for unmap_sg requestsJoerg Roedel
Impact: see number of unmap_sg requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for map_sg requestsJoerg Roedel
Impact: see number of map_sg requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for unmap_single requestsJoerg Roedel
Impact: see number of unmap_single requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for map_single requestsJoerg Roedel
Impact: see number of map_single requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for completion wait eventsJoerg Roedel
Impact: see number of completion wait events in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add init code for statistic collectionJoerg Roedel
Impact: create a new debugfs directory Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: use calc_devid in prealloc_protection_domainsJoerg Roedel
Impact: cleanup Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: convert iommu->need_sync to boolJoerg Roedel
Impact: use bool instead of int for iommu->need_sync Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: use dev_name instead of self-build print_devidJoerg Roedel
Impact: use generic dev_name instead of own function Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: allocate a new protection for hotplugged devicesJoerg Roedel
Impact: also hotplug devices benefit from device isolation Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add a domain flag for default domainsJoerg Roedel
Impact: adds a new protection domain flag Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: register functions for the IOMMU APIJoerg Roedel
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain address lookup function for IOMMU APIJoerg Roedel
Impact: add a generic function to lockup addresses in protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain unmap function for IOMMU APIJoerg Roedel
Impact: add a generic function to unmap pages into protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain map function for IOMMU APIJoerg Roedel
Impact: add a generic function to map pages into protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device attach function for IOMMU APIJoerg Roedel
Impact: add a generic function to attach devices to protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device detach function for IOMMU APIJoerg Roedel
Impact: add a generic function to detach devices from protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain destroy function for IOMMU APIJoerg Roedel
Impact: add a generic function for releasing protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain init function for IOMMU APIJoerg Roedel
Impact: add a generic function for allocation protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain cleanup helper functionJoerg Roedel
Impact: add a function to remove all devices from a domain Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device notifier callbackJoerg Roedel
Impact: inform IOMMU about state change of a device in the driver core Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device detach helper functionsJoerg Roedel
Impact: add helper functions to detach a device from a domain Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: rename set_device_domain functionJoerg Roedel
Impact: rename set_device_domain() to attach_device() Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device reference counting for protection domainsJoerg Roedel
Impact: know how many devices are assigned to a domain Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add checks for dma_ops domain to dma_ops functionsJoerg Roedel
Impact: detect when a driver uses a device assigned otherwise Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add protection domain flagsJoerg Roedel
Imapct: add a new struct member to 'struct protection_domain' When using protection domains for dma_ops and KVM its better to know for which subsystem it was allocated. Add a flags member to struct protection domain for that purpose. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add iommu_flush_domain functionJoerg Roedel
Impact: add a function to flush a domain id on every IOMMU Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: don't remove protection domain from iommu_pd_listJoerg Roedel
Impact: save unneeded logic to add and remove domains to the list The removal of a protection domain from the iommu_pd_list is not necessary. Another benefit is that we save complexity because we don't have to readd it later when the device no longer uses the domain. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: move invalidation command building to a separate functionJoerg Roedel
Impact: refactoring of iommu_queue_inv_iommu_pages Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: refactor completion wait handling into separate functionsJoerg Roedel
Impact: split one function into three The separate functions are required synchronize commands across all hardware IOMMUs in the system. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain id free functionJoerg Roedel
Impact: add code to release a domain id Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: make dma_ops_free_pagetable genericJoerg Roedel
Impact: change code to free pagetables from protection domains The dma_ops_free_pagetable function can only free pagetables from dma_ops domains. Change that to free pagetables of pure protection domains. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: rename iommu_map to iommu_map_pageJoerg Roedel
Impact: function rename The iommu_map function maps only one page. Make this clear in the function name. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2008-12-23Merge branch 'x86/iommu' into x86/coreIngo Molnar
2008-12-17AMD IOMMU: panic if completion wait loop failsJoerg Roedel
Impact: prevents data corruption after a failed completion wait loop Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2008-12-08AMD IOMMU: __unmap_single: check for bad_dma_address instead of 0Joerg Roedel
Impact: minor fix Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2008-12-08AMD IOMMU: fix WARN_ON in dma_ops unmap pathJoerg Roedel
Impact: minor fix Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2008-12-08AMD IOMMU: fix typo in commentJoerg Roedel
Impact: cleanup Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2008-12-08AMD IOMMU: fix loop counter in free_pagetable functionJoerg Roedel
Impact: bugfix Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2008-12-08AMD IOMMU: fix iommu_map_page functionJoerg Roedel
Impact: bugfix in iommu_map_page function Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2008-12-03AMD IOMMU: fix possible race while accessing iommu->need_syncJoerg Roedel
The access to the iommu->need_sync member needs to be protected by the iommu->lock. Otherwise this is a possible race condition. Fix it with this patch. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>