From 55d9bbb21ccc7db342fc0d471cbc209207b5b3d8 Mon Sep 17 00:00:00 2001 From: KOSAKI Motohiro Date: Tue, 17 Nov 2009 16:21:09 +0900 Subject: [PATCH] --- yaml --- r: 176895 b: refs/heads/master c: 354bb65e6e0df0aaae0e5b1ea33948d8e0b61418 h: refs/heads/master i: 176893: 697b651a7308f8d75c44647324816998028221c0 176891: 3333d30b0473212b5e41e23051e6ac8804864edf 176887: d8a9f7313cf16229ae839731c1cf0f689547164f 176879: f39896df19216a82b3f07576255f95a3883abf7c 176863: d4490739f93da98b7223d72d55c267fbce29ceca 176831: 24b7220c2f88cebc925b539b789c2a66339a305c 176767: e5de20ba31de8175ae20cd0dd4b9d6cbf720bf83 176639: c002ab49c7fd6a7d787d69839f11c93a027252a8 v: v3 --- [refs] | 2 +- trunk/drivers/pci/intel-iommu.c | 25 +++---------------------- 2 files changed, 4 insertions(+), 23 deletions(-) diff --git a/[refs] b/[refs] index 1434611ce0d2..058ce38d60dd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1672af1164d3d50ba8908014fd34cc0b58afdc1e +refs/heads/master: 354bb65e6e0df0aaae0e5b1ea33948d8e0b61418 diff --git a/trunk/drivers/pci/intel-iommu.c b/trunk/drivers/pci/intel-iommu.c index 466079535330..4e1dd40f18e3 100644 --- a/trunk/drivers/pci/intel-iommu.c +++ b/trunk/drivers/pci/intel-iommu.c @@ -387,33 +387,14 @@ static struct kmem_cache *iommu_domain_cache; static struct kmem_cache *iommu_devinfo_cache; static struct kmem_cache *iommu_iova_cache; -static inline void *iommu_kmem_cache_alloc(struct kmem_cache *cachep) -{ - unsigned int flags; - void *vaddr; - - /* trying to avoid low memory issues */ - flags = current->flags & PF_MEMALLOC; - current->flags |= PF_MEMALLOC; - vaddr = kmem_cache_alloc(cachep, GFP_ATOMIC); - current->flags &= (~PF_MEMALLOC | flags); - return vaddr; -} - - static inline void *alloc_pgtable_page(int node) { - unsigned int flags; struct page *page; void *vaddr = NULL; - /* trying to avoid low memory issues */ - flags = current->flags & PF_MEMALLOC; - current->flags |= PF_MEMALLOC; page = alloc_pages_node(node, GFP_ATOMIC | __GFP_ZERO, 0); if (page) vaddr = page_address(page); - current->flags &= (~PF_MEMALLOC | flags); return vaddr; } @@ -424,7 +405,7 @@ static inline void free_pgtable_page(void *vaddr) static inline void *alloc_domain_mem(void) { - return iommu_kmem_cache_alloc(iommu_domain_cache); + return kmem_cache_alloc(iommu_domain_cache, GFP_ATOMIC); } static void free_domain_mem(void *vaddr) @@ -434,7 +415,7 @@ static void free_domain_mem(void *vaddr) static inline void * alloc_devinfo_mem(void) { - return iommu_kmem_cache_alloc(iommu_devinfo_cache); + return kmem_cache_alloc(iommu_devinfo_cache, GFP_ATOMIC); } static inline void free_devinfo_mem(void *vaddr) @@ -444,7 +425,7 @@ static inline void free_devinfo_mem(void *vaddr) struct iova *alloc_iova_mem(void) { - return iommu_kmem_cache_alloc(iommu_iova_cache); + return kmem_cache_alloc(iommu_iova_cache, GFP_ATOMIC); } void free_iova_mem(struct iova *iova)