ksm use jhash2 for hashing pages, in 4.14 xxhash has been merged to mainline kernel. xxhash much faster then jhash2 on big inputs (32 byte+) xxhash has 2 versions, one with 32-bit hash and one with 64-bit hash. 64-bit version works faster then 32-bit on 64-bit arch. So lets get better from two worlds, create arch dependent xxhash() function that will use fastest algo for current arch. This a first patch. Performance info and ksm update can be found in second patch. Changelog: v1 -> v2: - Move xxhash() to xxhash.h/c and separate patches v2 -> v3: - Move xxhash() xxhash.c -> xxhash.h - replace xxhash_t with 'unsigned long' - update kerneldoc above xxhash() Timofey Titovets (2): xxHash: create arch dependent 32/64-bit xxhash() KSM: Replace jhash2 with xxhash include/linux/xxhash.h | 23 +++++++++++++++++++++++ mm/Kconfig | 1 + mm/ksm.c | 14 +++++++------- 3 files changed, 31 insertions(+), 7 deletions(-) -- 2.14.1