On 2021/10/8 12:03, Stephen Rothwell wrote:
Hi all,
After merging the btrfs tree, today's linux-next build (nds32 allyesconfig
nds32le-gcc8) failed like this:
nds32le-linux-ld: fs/btrfs/lzo.o: in function `lzo_compress_pages':
(.text+0x226): undefined reference to `__umoddi3'
nds32le-linux-ld: (.text+0x22a): undefined reference to `__umoddi3'
nds32le-linux-ld: (.text+0x660): undefined reference to `__umoddi3'
nds32le-linux-ld: (.text+0x664): undefined reference to `__umoddi3'
Probably Caused by commit
0078783c7089 ("btrfs: rework lzo_compress_pages() to make it subpage compatible")
Yes, that's the commit.
It's calling (u64) % (u32), causing the problem.
And we got an earlier report with a better solution by doing (u64) &
(u32 mask - 1).
I guess the latest version is not yet pushed to -next.
Thanks,
Qu
This caused build failures in several other 32 bit architecture builds.