On 12.02.2011, at 15:54, David Gibson wrote: > Currently, get_segment() has a variable called hash. However it doesn't > (quite) get the hash value for the ppc hashed page table. Instead it > gets the hash shifted - effectively the offset of the hash bucket within > the hash page table. > > As well, as being different to the normal use of plain "hash" in the > architecture documentation, this usage necessitates some awkward 32/64 > dependent masks and shifts which clutter up the path in get_segment(). > > This patch alters the code to use raw hash values through get_segment() > including storing raw hashes instead of pte group offsets in the ctx > structure. This cleans up the path noticeably. > > This does necessitate 32/64 dependent shifts when the hash values are > taken out of the ctx structure and used, but those paths already have > 32/64 bit variants so this is less awkward than it was in get_segment(). > > Signed-off-by: David Gibson <d...@au1.ibm.com>
Still complex, but a lot more readable than before now :) Acked-by: Alexander Graf <ag...@suse.de> Alex