From 9214829e4b4d2280a4a576ec47b6388f3019b93a Mon Sep 17 00:00:00 2001 From: Carsten Otte Date: Sun, 30 Oct 2011 15:17:00 +0100 Subject: [PATCH] --- yaml --- r: 272079 b: refs/heads/master c: a9162f238a84ee05b09ea4b0ebd97fb20448c28c h: refs/heads/master i: 272077: cb6ffcfd048f953370cffbd9a3adec0a7fa23e22 272075: e3136f54947c7bd14a106dc4cea0d7355d93c682 272071: 8a3ef2a0c5598ebbbfb73b716e2425936e6851e6 272063: 85aeef4b48490d269016e0ce7cf28432dce905db v: v3 --- [refs] | 2 +- trunk/arch/s390/mm/pgtable.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 98fafd9eeccc..365c928322c6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 69ba97436647f3b793f8e0784d1cde63adf241ea +refs/heads/master: a9162f238a84ee05b09ea4b0ebd97fb20448c28c diff --git a/trunk/arch/s390/mm/pgtable.c b/trunk/arch/s390/mm/pgtable.c index 529a08838376..e4a4cefb92b3 100644 --- a/trunk/arch/s390/mm/pgtable.c +++ b/trunk/arch/s390/mm/pgtable.c @@ -256,6 +256,9 @@ void gmap_disable(struct gmap *gmap) } EXPORT_SYMBOL_GPL(gmap_disable); +/* + * gmap_alloc_table is assumed to be called with mmap_sem held + */ static int gmap_alloc_table(struct gmap *gmap, unsigned long *table, unsigned long init) { @@ -267,14 +270,12 @@ static int gmap_alloc_table(struct gmap *gmap, return -ENOMEM; new = (unsigned long *) page_to_phys(page); crst_table_init(new, init); - down_read(&gmap->mm->mmap_sem); if (*table & _REGION_ENTRY_INV) { list_add(&page->lru, &gmap->crst_list); *table = (unsigned long) new | _REGION_ENTRY_LENGTH | (*table & _REGION_ENTRY_TYPE_MASK); } else __free_pages(page, ALLOC_ORDER); - up_read(&gmap->mm->mmap_sem); return 0; }