diff options
author | Joerg Roedel <joerg.roedel@amd.com> | 2011-05-10 10:50:42 +0200 |
---|---|---|
committer | Joerg Roedel <joerg.roedel@amd.com> | 2011-05-10 11:07:58 +0200 |
commit | 72fe00f01f9a3240a1073be27aeaf4fc476cc662 (patch) | |
tree | 6030bac491411d7a70e8c1c1da90c8f5e552dc74 /arch/x86/kernel/amd_iommu.c | |
parent | 604c307bf47350c74bb36507b86a08726c7c2075 (diff) | |
download | op-kernel-dev-72fe00f01f9a3240a1073be27aeaf4fc476cc662.zip op-kernel-dev-72fe00f01f9a3240a1073be27aeaf4fc476cc662.tar.gz |
x86/amd-iommu: Use threaded interupt handler
Move the interupt handling for the iommu into the interupt
thread to reduce latencies and prepare interupt handling for
pri handling.
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'arch/x86/kernel/amd_iommu.c')
-rw-r--r-- | arch/x86/kernel/amd_iommu.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/x86/kernel/amd_iommu.c b/arch/x86/kernel/amd_iommu.c index dc5ddda..873e7e1 100644 --- a/arch/x86/kernel/amd_iommu.c +++ b/arch/x86/kernel/amd_iommu.c @@ -366,7 +366,7 @@ static void iommu_poll_events(struct amd_iommu *iommu) spin_unlock_irqrestore(&iommu->lock, flags); } -irqreturn_t amd_iommu_int_handler(int irq, void *data) +irqreturn_t amd_iommu_int_thread(int irq, void *data) { struct amd_iommu *iommu; @@ -376,6 +376,11 @@ irqreturn_t amd_iommu_int_handler(int irq, void *data) return IRQ_HANDLED; } +irqreturn_t amd_iommu_int_handler(int irq, void *data) +{ + return IRQ_WAKE_THREAD; +} + /**************************************************************************** * * IOMMU command queuing functions |