Skip to content
  • Arnd Bergmann's avatar
    staging: goldfish: use div64_s64 instead of do_div · b0e302b4
    Arnd Bergmann authored
    
    
    The goldfish nand driver divides a signed 64-bit number (loff_t)
    in multiple places using the do_div() function. This has always
    been unreliable but now produces a compiler warning (since 4.5-rc1):
    
    goldfish/goldfish_nand.c: In function 'goldfish_nand_erase':
    goldfish/goldfish_nand.c:107:91: error: comparison of distinct pointer types lacks a cast [-Werror]
    goldfish/goldfish_nand.c: In function 'goldfish_nand_read_oob':
    goldfish/goldfish_nand.c:145:91: error: comparison of distinct pointer types lacks a cast [-Werror]
    
    This changes the code to the equivalent div_s64{,_rem} that
    works correctly for negative numbers (which we should never
    get here).
    
    The warning has shown up on ARM allmodconfig builds after the goldfish
    bus driver has become visible on ARM.
    
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Fixes: bd2f348d
    
     ("goldfish: refactor goldfish platform configs")
    Acked-by: default avatarAlan Cox <alan@linux.intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    b0e302b4