stec-inc / EnhanceIO

EnhanceIO Open Source for Linux
Other
420 stars 176 forks source link

Building Linux 3.7.8 with latest EnhanceIO fails on i686 #14

Closed pfactum closed 11 years ago

pfactum commented 11 years ago

I try to compile EnhanceIO with 32-bit kernel and get the following error on modpost:

Kernel: arch/x86/boot/bzImage is ready  (#14)
  MODPOST 3149 modules
ERROR: "__udivdi3" [drivers/block/enhanceio/enhanceio.ko] undefined!
ERROR: "__umoddi3" [drivers/block/enhanceio/enhanceio.ko] undefined!
ERROR: "__divdi3" [drivers/block/enhanceio/enhanceio.ko] undefined!
WARNING: modpost: Found 12 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

Could that be fixed?

pfactum commented 11 years ago

It seems that it's needed to replace 64-bit division with do_div call. Here is en example: http://www.spinics.net/lists/linux-wireless/msg75469.html

sanoj-stec commented 11 years ago

Thanks for identifying the bug and the link

sanoj-stec commented 11 years ago

This bug is fixed now