summaryrefslogtreecommitdiffstats
path: root/arch
Commit message (Collapse)AuthorAgeFilesLines
* Merge branches 'iommu/api' and 'iommu/amd' into for-linusJoerg Roedel2009-01-034-87/+676
|\
| * AMD IOMMU: prealloc_protection_domains should be staticJaswinder Singh Rajput2009-01-031-1/+1
| | | | | | | | | | | | | | | | | | | | 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>
| * AMD IOMMU: add statistics about total number of map requestsJoerg Roedel2009-01-031-0/+4
| | | | | | | | | | | | Impact: see total number of map requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add statistics about allocated io memoryJoerg Roedel2009-01-031-0/+6
| | | | | | | | | | | | Impact: see amount of allocated io memory in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for domain tlb flushesJoerg Roedel2009-01-031-0/+4
| | | | | | | | | | | | Impact: see number of domain tlb flushes in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for single iommu domain tlb flushesJoerg Roedel2009-01-031-0/+4
| | | | | | | | | | | | Impact: see number of single iommu domain tlb flushes in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for cross-page requestJoerg Roedel2009-01-031-0/+5
| | | | | | | | | | | | Impact: see number of requests for more than one page in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for free_coherent requestsJoerg Roedel2009-01-031-0/+4
| | | | | | | | | | | | Impact: see number of free_coherent requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for alloc_coherent requestsJoerg Roedel2009-01-031-0/+4
| | | | | | | | | | | | Impact: see number of alloc_coherent requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for unmap_sg requestsJoerg Roedel2009-01-031-0/+4
| | | | | | | | | | | | Impact: see number of unmap_sg requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for map_sg requestsJoerg Roedel2009-01-031-0/+4
| | | | | | | | | | | | Impact: see number of map_sg requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for unmap_single requestsJoerg Roedel2009-01-031-0/+4
| | | | | | | | | | | | Impact: see number of unmap_single requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for map_single requestsJoerg Roedel2009-01-031-0/+4
| | | | | | | | | | | | Impact: see number of map_single requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add stats counter for completion wait eventsJoerg Roedel2009-01-031-0/+6
| | | | | | | | | | | | Impact: see number of completion wait events in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add init code for statistic collectionJoerg Roedel2009-01-032-0/+39
| | | | | | | | | | | | Impact: create a new debugfs directory Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add necessary header defines for stats countingJoerg Roedel2009-01-031-0/+26
| | | | | | | | | | | | Impact: add defines to make iommu stats collection configurable Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add Kconfig entry for statistic collection codeJoerg Roedel2009-01-031-0/+10
| | | | | | | | | | | | Impact: adds new Kconfig entry Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: use dev_name in iommu_enable functionJoerg Roedel2009-01-031-6/+2
| | | | | | | | | | | | Impact: cleanup Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: use calc_devid in prealloc_protection_domainsJoerg Roedel2009-01-031-1/+1
| | | | | | | | | | | | Impact: cleanup Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: convert amd_iommu_isolate to boolJoerg Roedel2009-01-032-4/+5
| | | | | | | | | | | | Impact: cleanup Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: convert iommu->need_sync to boolJoerg Roedel2009-01-032-3/+3
| | | | | | | | | | | | Impact: use bool instead of int for iommu->need_sync Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: use dev_name instead of self-build print_devidJoerg Roedel2009-01-032-14/+1
| | | | | | | | | | | | Impact: use generic dev_name instead of own function Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: allocate a new protection for hotplugged devicesJoerg Roedel2009-01-031-0/+17
| | | | | | | | | | | | Impact: also hotplug devices benefit from device isolation Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add a domain flag for default domainsJoerg Roedel2009-01-032-0/+3
| | | | | | | | | | | | Impact: adds a new protection domain flag Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: register functions for the IOMMU APIJoerg Roedel2009-01-031-0/+18
| | | | | | | | Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add domain address lookup function for IOMMU APIJoerg Roedel2009-01-031-0/+31
| | | | | | | | | | | | Impact: add a generic function to lockup addresses in protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add domain unmap function for IOMMU APIJoerg Roedel2009-01-031-0/+41
| | | | | | | | | | | | Impact: add a generic function to unmap pages into protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add domain map function for IOMMU APIJoerg Roedel2009-01-031-0/+29
| | | | | | | | | | | | Impact: add a generic function to map pages into protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add device attach function for IOMMU APIJoerg Roedel2009-01-031-0/+35
| | | | | | | | | | | | Impact: add a generic function to attach devices to protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add device detach function for IOMMU APIJoerg Roedel2009-01-031-0/+26
| | | | | | | | | | | | Impact: add a generic function to detach devices from protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add domain destroy function for IOMMU APIJoerg Roedel2009-01-031-0/+21
| | | | | | | | | | | | Impact: add a generic function for releasing protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add domain init function for IOMMU APIJoerg Roedel2009-01-031-0/+30
| | | | | | | | | | | | Impact: add a generic function for allocation protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add domain cleanup helper functionJoerg Roedel2009-01-031-0/+28
| | | | | | | | | | | | Impact: add a function to remove all devices from a domain Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add device notifier callbackJoerg Roedel2009-01-031-2/+60
| | | | | | | | | | | | Impact: inform IOMMU about state change of a device in the driver core Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add device detach helper functionsJoerg Roedel2009-01-031-0/+39
| | | | | | | | | | | | Impact: add helper functions to detach a device from a domain Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: rename set_device_domain functionJoerg Roedel2009-01-031-5/+5
| | | | | | | | | | | | Impact: rename set_device_domain() to attach_device() Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add device reference counting for protection domainsJoerg Roedel2009-01-032-1/+3
| | | | | | | | | | | | Impact: know how many devices are assigned to a domain Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add checks for dma_ops domain to dma_ops functionsJoerg Roedel2009-01-031-6/+35
| | | | | | | | | | | | Impact: detect when a driver uses a device assigned otherwise Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: add protection domain flagsJoerg Roedel2009-01-032-5/+10
| | | | | | | | | | | | | | | | | | | | 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>
| * AMD IOMMU: add iommu_flush_domain functionJoerg Roedel2009-01-031-0/+24
| | | | | | | | | | | | Impact: add a function to flush a domain id on every IOMMU Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: don't remove protection domain from iommu_pd_listJoerg Roedel2009-01-031-1/+0
| | | | | | | | | | | | | | | | | | | | 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>
| * AMD IOMMU: move invalidation command building to a separate functionJoerg Roedel2009-01-031-10/+16
| | | | | | | | | | | | Impact: refactoring of iommu_queue_inv_iommu_pages Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: refactor completion wait handling into separate functionsJoerg Roedel2009-01-031-23/+45
| | | | | | | | | | | | | | | | | | 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>
| * AMD IOMMU: add domain id free functionJoerg Roedel2009-01-031-0/+12
| | | | | | | | | | | | Impact: add code to release a domain id Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
| * AMD IOMMU: make dma_ops_free_pagetable genericJoerg Roedel2009-01-031-3/+5
| | | | | | | | | | | | | | | | | | | | 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>
| * AMD IOMMU: rename iommu_map to iommu_map_pageJoerg Roedel2009-01-031-5/+5
| | | | | | | | | | | | | | | | | | 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>
* | KVM: change KVM to use IOMMU APIJoerg Roedel2009-01-036-6/+8
| | | | | | | | Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
* | select IOMMU_API when DMAR and/or AMD_IOMMU is selectedJoerg Roedel2009-01-032-0/+6
| | | | | | | | | | | | | | These two IOMMUs can implement the current version of this API. So select the API if one or both of these IOMMU drivers is selected. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
* | KVM: rename vtd.c to iommu.cJoerg Roedel2009-01-032-2/+2
|/ | | | | | | | | Impact: file renamed The code in the vtd.c file can be reused for other IOMMUs as well. So rename it to make it clear that it handle more than VT-d. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
* Merge branch 'cpus4096-for-linus-2' of ↵Linus Torvalds2009-01-02157-810/+1085
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'cpus4096-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (66 commits) x86: export vector_used_by_percpu_irq x86: use logical apicid in x2apic_cluster's x2apic_cpu_mask_to_apicid_and() sched: nominate preferred wakeup cpu, fix x86: fix lguest used_vectors breakage, -v2 x86: fix warning in arch/x86/kernel/io_apic.c sched: fix warning in kernel/sched.c sched: move test_sd_parent() to an SMP section of sched.h sched: add SD_BALANCE_NEWIDLE at MC and CPU level for sched_mc>0 sched: activate active load balancing in new idle cpus sched: bias task wakeups to preferred semi-idle packages sched: nominate preferred wakeup cpu sched: favour lower logical cpu number for sched_mc balance sched: framework for sched_mc/smt_power_savings=N sched: convert BALANCE_FOR_xx_POWER to inline functions x86: use possible_cpus=NUM to extend the possible cpus allowed x86: fix cpu_mask_to_apicid_and to include cpu_online_mask x86: update io_apic.c to the new cpumask code x86: Introduce topology_core_cpumask()/topology_thread_cpumask() x86: xen: use smp_call_function_many() x86: use work_on_cpu in x86/kernel/cpu/mcheck/mce_amd_64.c ... Fixed up trivial conflict in kernel/time/tick-sched.c manually
OpenPOWER on IntegriCloud