]> www.infradead.org Git - users/jedix/linux-maple.git/commit
x86/mm/kmmio: Fix mmiotrace for hugepages
authorKarol Herbst <nouveau@karolherbst.de>
Thu, 3 Mar 2016 01:03:11 +0000 (02:03 +0100)
committerDhaval Giani <dhaval.giani@oracle.com>
Fri, 20 Jan 2017 22:22:01 +0000 (17:22 -0500)
commit093d4af4f6a46e4a6aec3b77beada853b0ff1291
tree3c91286068ed77f41ec3187b4578146a7ebc8da9
parentd35c66edca6c34e632ffceb7523009d32abcfb4b
x86/mm/kmmio: Fix mmiotrace for hugepages

Orabug: 25308067

[ Upstream commit cfa52c0cfa4d727aa3e457bf29aeff296c528a08 ]

Because Linux might use bigger pages than the 4K pages to handle those mmio
ioremaps, the kmmio code shouldn't rely on the pade id as it currently does.

Using the memory address instead of the page id lets us look up how big the
page is and what its base address is, so that we won't get a page fault
within the same page twice anymore.

Tested-by: Pierre Moreau <pierre.morrow@free.fr>
Signed-off-by: Karol Herbst <nouveau@karolherbst.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Luis R. Rodriguez <mcgrof@suse.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Toshi Kani <toshi.kani@hp.com>
Cc: linux-mm@kvack.org
Cc: linux-x86_64@vger.kernel.org
Cc: nouveau@lists.freedesktop.org
Cc: pq@iki.fi
Cc: rostedt@goodmis.org
Link: http://lkml.kernel.org/r/1456966991-6861-1-git-send-email-nouveau@karolherbst.de
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
(cherry picked from commit 6e939f787e830777bdafd5d70f13ed6498dc7ac0)
Signed-off-by: Dhaval Giani <dhaval.giani@oracle.com>
arch/x86/mm/kmmio.c