Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

exfat driver not compiling on rpi4 #725

Open
KacperSynator opened this issue Feb 23, 2025 · 0 comments
Open

exfat driver not compiling on rpi4 #725

KacperSynator opened this issue Feb 23, 2025 · 0 comments

Comments

@KacperSynator
Copy link

The dkms exfat-nofuse is not compiling on RPI4.

I run the crankshaft systemcheck and the output was:

Crankshaft Management Tool v2.4.0 is executing command...

Checking systemd automount flag:

CSMT has detected a wrong setup in systemd for usb drives!
Applying fix for it...
Reboot your system to activate the fix!

Checking dkms exfat module:

CSMT has detected mising exfat module!
Trying to rebuild it...

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
KDIR=/lib/modules/5.10.103-v7l+/build MDIR=/lib/modules/5.10.103-v7l+ make.....(bad exit status: 2)
Error! Bad return status for module build on kernel: 5.10.103-v7l+ (armv7l)
Consult /var/lib/dkms/exfat/1.2.8/build/make.log for more information.
Module build failed.


All checks done.

Done.

The log file:

cat  /var/lib/dkms/exfat/1.2.8/build/make.log
DKMS make.log for exfat-1.2.8 for kernel 5.10.103-v7l+ (armv7l)
Sun Sep 11 23:58:57 CEST 2022
make -C /lib/modules/5.10.103-v7l+/build M=/var/lib/dkms/exfat/1.2.8/build modules
make[1]: Entering directory '/usr/src/linux-headers-5.10.103-v7l+'
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_core.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_super.o
/var/lib/dkms/exfat/1.2.8/build/exfat_super.c: In function ‘exfat_readpages’:
/var/lib/dkms/exfat/1.2.8/build/exfat_super.c:1635:9: error: implicit declaration of function ‘mpage_readpages’; did you mean ‘mpage_readpage’? [-Werror=implicit-function-declaration]
  ret =  mpage_readpages(mapping, pages, nr_pages, exfat_get_block);
         ^~~~~~~~~~~~~~~
         mpage_readpage
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:280: /var/lib/dkms/exfat/1.2.8/build/exfat_super.o] Error 1
make[1]: *** [Makefile:1825: /var/lib/dkms/exfat/1.2.8/build] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.10.103-v7l+'
make: *** [Makefile:35: all] Error 2

I did a small research and some functions are not supported in newer kernel versions: barrybingo/exfat-nofuse#5.
The exfat-nofuse repo which it is build from, contains a branch with fixes for newer kernel versions: https://github.com/barrybingo/exfat-nofuse/tree/new-kernel-patches. So i changed this line

git merge barrybingo/master
to point the new-kernel-patches branch instead of master and build the image. But the dkms is still not building properly:

cat /var/lib/dkms/exfat/1.2.8/build/make.log
DKMS make.log for exfat-1.2.8 for kernel 5.10.103-v7l+ (armv7l)
Sun 23 Feb 11:40:09 UTC 2025
make -C /lib/modules/5.10.103-v7l+/build M=/var/lib/dkms/exfat/1.2.8/build modules
make[1]: Entering directory '/usr/src/linux-headers-5.10.103-v7l+'
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_core.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_super.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_api.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_blkdev.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_cache.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_data.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_bitmap.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_nls.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_oal.o
  CC [M]  /var/lib/dkms/exfat/1.2.8/build/exfat_upcase.o
  LD [M]  /var/lib/dkms/exfat/1.2.8/build/exfat.o
  MODPOST /var/lib/dkms/exfat/1.2.8/build/Module.symvers
ERROR: modpost: "__aeabi_ldivmod" [/var/lib/dkms/exfat/1.2.8/build/exfat.ko] undefined!
ERROR: modpost: "__aeabi_uldivmod" [/var/lib/dkms/exfat/1.2.8/build/exfat.ko] undefined!
make[2]: *** [scripts/Makefile.modpost:124: /var/lib/dkms/exfat/1.2.8/build/Module.symvers] Error 1
make[2]: *** Deleting file '/var/lib/dkms/exfat/1.2.8/build/Module.symvers'
make[1]: *** [Makefile:1729: modules] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.10.103-v7l+'
make: *** [Makefile:35: all] Error 2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant