datto / dattobd

kernel module for taking block-level snapshots and incremental backups of Linux block devices
GNU General Public License v2.0
560 stars 120 forks source link

AArch64 / armv7hl builds #192

Open smccloud opened 4 years ago

smccloud commented 4 years ago

I would love to use this on my Rapsberry Pi Pi-Hole system, but your pre-built packages do not support armhf. Is there any chance this can get added in the future?

nixomose commented 4 years ago

I've gotten it to build and work on a pi a long time ago. it's possible and not that hard. you just have to find the bits of code that refer to the intel specific stuff about grabbing ring 0 (if I remember right) and just comment it all out. the rest of it appears to work fine.

crawfxrd commented 4 years ago

Alternative architectures are not supported, so packages from Datto are highly unlikely.

We should be able to move the hooks into an ifdef block so it will at least build on AArch64. I don't think CONFIG_X86 is available on old kernels though. Then at least make <rpm|deb> could be used to build packages locally without modification.

crawfxrd commented 4 years ago

example: crawfxrd/dattobd@9126fbb32d13a

Some questions it brought up:

Conan-Kudo commented 4 years ago

We could do this check by doing uname -m and verifying that the returned string matches i?86 or x86_64. If it doesn't match either, then we can disable the hook. We can also make it overridable as a build-time option, for environments where it won't work at all.