dpaa2-eth: Use proper division helper in dpaa2_dbg_ch_show
authorNathan Chancellor <natechancellor@gmail.com>
Tue, 28 Apr 2020 17:42:22 +0000 (10:42 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 28 Apr 2020 21:31:43 +0000 (14:31 -0700)
When building arm32 allmodconfig:

ERROR: modpost: "__aeabi_uldivmod"
[drivers/net/ethernet/freescale/dpaa2/fsl-dpaa2-eth.ko] undefined!

frames and cdan are both of type __u64 (unsigned long long) so we need
to use div64_u64 to avoid this issues.

Fixes: 460fd830dd9d ("dpaa2-eth: add channel stat to debugfs")
Link: https://github.com/ClangBuiltLinux/linux/issues/1012
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Reported-by: kernelci.org bot <bot@kernelci.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-debugfs.c

index 80291af..0a31e42 100644 (file)
@@ -139,7 +139,7 @@ static int dpaa2_dbg_ch_show(struct seq_file *file, void *offset)
                           ch->stats.dequeue_portal_busy,
                           ch->stats.frames,
                           ch->stats.cdan,
-                          ch->stats.frames / ch->stats.cdan,
+                          div64_u64(ch->stats.frames, ch->stats.cdan),
                           ch->buf_count);
        }