sb_edac 32-bit compile fail due to 64-bit divide

Josh Boyer
2011-11-03T14:07:21Z

Hi,

It seems the newly added EDAC driver for SandyBridge won't build on
32-bit x86 because of a 64-bit divide somewhere:

drivers/edac/sb_edac.c: In function 'get_memory_error_data':
drivers/edac/sb_edac.c:861:2: warning: left shift count >= width of type
[enabled by default]
<snip>
ERROR: "__udivdi3" [drivers/edac/sb_edac.ko] undefined!
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

You can find the full build log here:

http://koji.fedoraproject.org/koji/getfile?taskID=3482579&name=build.log

Before I go digging into where this is done and what to do about it, I
do want to confirm that it is supposed to work on a 32-bit kernel,
correct?

josh