summary refs log tree commit diff
path: root/arch/sparc/mm
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-07-11 21:34:24 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2017-07-11 21:34:24 -0700
commit3b06b1a7448ee4e8e51dae3938774735404e51fb (patch)
tree5da6c7442bbdc0e3a63034fd752e3950b4349b0b /arch/sparc/mm
parent130568d5eac5537cbd64cfb12103550af90edb79 (diff)
parentdbd2667a4fb9ce4f547982b07cd69dda127c47ea (diff)
downloadlinux-3b06b1a7448ee4e8e51dae3938774735404e51fb.tar.gz
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
Pull sparc fixes from David Miller:

 - Fix symbol version generation for assembler on sparc, from
   Nagarathnam Muthusamy.

 - Fix compound page handling in gup_huge_pmd(), from Nitin Gupta.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
  sparc64: Fix gup_huge_pmd
  Adding the type of exported symbols
  sed regex in Makefile.build requires line break between exported symbols
  Adding asm-prototypes.h for genksyms to generate crc
Diffstat (limited to 'arch/sparc/mm')
-rw-r--r--arch/sparc/mm/gup.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/sparc/mm/gup.c b/arch/sparc/mm/gup.c
index cd0e32bbcb1d..f80cfc64c55b 100644
--- a/arch/sparc/mm/gup.c
+++ b/arch/sparc/mm/gup.c
@@ -78,8 +78,8 @@ static int gup_huge_pmd(pmd_t *pmdp, pmd_t pmd, unsigned long addr,
 		return 0;
 
 	refs = 0;
-	head = pmd_page(pmd);
-	page = head + ((addr & ~PMD_MASK) >> PAGE_SHIFT);
+	page = pmd_page(pmd) + ((addr & ~PMD_MASK) >> PAGE_SHIFT);
+	head = compound_head(page);
 	do {
 		VM_BUG_ON(compound_head(page) != head);
 		pages[*nr] = page;