Skip to content
  • George Spelvin's avatar
    Eliminate bad hash multipliers from hash_32() and hash_64() · ef703f49
    George Spelvin authored
    The "simplified" prime multipliers made very bad hash functions, so get rid
    of them.  This completes the work of 689de1d6
    
    .
    
    To avoid the inefficiency which was the motivation for the "simplified"
    multipliers, hash_64() on 32-bit systems is changed to use a different
    algorithm.  It makes two calls to hash_32() instead.
    
    drivers/media/usb/dvb-usb-v2/af9015.c uses the old GOLDEN_RATIO_PRIME_32
    for some horrible reason, so it inherits a copy of the old definition.
    
    Signed-off-by: default avatarGeorge Spelvin <linux@sciencehorizons.net>
    Cc: Antti Palosaari <crope@iki.fi>
    Cc: Mauro Carvalho Chehab <m.chehab@samsung.com>
    ef703f49