Since we fixed hash_64 to not suck, there is no need to play games to attempt to improve the hash value on 64bit. Also, since we don't use the bit value for the variables, use hash_ptr() directly.
Cc: Linus Torvalds <[email protected]> Cc: George Spelvin <[email protected]> Signed-off-by: Peter Zijlstra (Intel) <[email protected]> --- kernel/sched/wait_bit.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) --- a/kernel/sched/wait_bit.c +++ b/kernel/sched/wait_bit.c @@ -151,12 +151,7 @@ EXPORT_SYMBOL(wake_up_bit); wait_queue_head_t *__var_waitqueue(void *p) { - if (BITS_PER_LONG == 64) { - unsigned long q = (unsigned long)p; - - return bit_waitqueue((void *)(q & ~1), q & 1); - } - return bit_waitqueue(p, 0); + return bit_wait_table + hash_ptr(p, WAIT_TABLE_BITS); } EXPORT_SYMBOL(__var_waitqueue);

