[PATCH] ppc64: More hugepage fixes
haveblue at us.ibm.com
Tue Sep 27 12:33:31 EST 2005
On Tue, 2005-09-27 at 11:56 +1000, Benjamin Herrenschmidt wrote:
> My previous patch fixing invalidation of huge PTEs wasn't good enough,
> we still had an issue if a PTE invalidation batch contained both small
> and large pages. This patch fixes this by making sure the batch is
> flushed if the page size fed to it changes.
(It always helps when you include 'diff -p' output; it makes patches
much easier to read)
I'm curious, what's the actual bug?
__tlbie itself doesn't seem like it would do too much differently if
called for large or small pages because all it does is align the vaddr
differently. I don't know where it would even get an unaligned address
from unless somebody sticks one in one of the batch->addrs. If the
addresses are aligned, I don't see how this patch would help.
Or, is it required that you must sync with:
asm volatile("eieio; tlbsync; ptesync":::"memory");
between tlbie's of large and small pages.
More information about the Linuxppc64-dev