linux-apfs / linux-apfs-rw

APFS module for linux, with experimental write support
GNU General Public License v2.0
510 stars 34 forks source link

Incompatible with kernels >= 5.19 #29

Closed Luflosi closed 2 years ago

Luflosi commented 2 years ago

Here is the build log of compiling the latest master version:

make -C /nix/store/0rdnj4x5qa093cf5zi78knljwa05raw0-linux-5.19-dev/lib/modules/5.19.0/build M=/build/source
make[1]: Entering directory '/nix/store/0rdnj4x5qa093cf5zi78knljwa05raw0-linux-5.19-dev/lib/modules/5.19.0/build'
  CC [M]  /build/source/btree.o
  CC [M]  /build/source/compress.o
  CC [M]  /build/source/dir.o
  CC [M]  /build/source/extents.o
  CC [M]  /build/source/file.o
/build/source/file.c: In function 'apfs_file_mmap':
/build/source/file.c:109:28: error: 'const struct address_space_operations' has no member named 'readpage'
  109 |         if (!mapping->a_ops->readpage)
      |                            ^~
make[2]: *** [/nix/store/0rdnj4x5qa093cf5zi78knljwa05raw0-linux-5.19-dev/lib/modules/5.19.0/source/scripts/Makefile.build:249: /build/source/file.o] Error 1
make[1]: *** [/nix/store/0rdnj4x5qa093cf5zi78knljwa05raw0-linux-5.19-dev/lib/modules/5.19.0/source/Makefile:1843: /build/source] Error 2
make[1]: Leaving directory '/nix/store/0rdnj4x5qa093cf5zi78knljwa05raw0-linux-5.19-dev/lib/modules/5.19.0/build'
make: *** [Makefile:16: default] Error 2

Looks like someone wrote a patch (that I didn't test) for a slightly older version of this kernel module: https://bugs.launchpad.net/ubuntu/+source/linux-apfs-rw/+bug/1982115.

alexmyczko commented 2 years ago

true https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1016770

mefsaal commented 2 years ago

Hi i made some diff/patch file test based on debian patch if someone wanna try are free. now i dont have any APFS now in my pc and dont have time

apfs-rw.zip

eafer commented 2 years ago

true https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1016770

@alexmyczko That looks like a separate issue, and it should have been fixed a couple of weeks ago. I guess the package is outdated? It says 20220214 right?

eafer commented 2 years ago

@mefsaal The debian patch seems to have made a mistake with the version checks, and it would break the build for 5.18. For instance, mpage_read_folio() was only added for 5.19.

alexmyczko commented 2 years ago

So I guess I'll wait for that new patch to be fixed, and update the debian package right after that... (preferably when the patch is merged to main/master)

alexmyczko commented 2 years ago

works for me, thank you!

Luflosi commented 2 years ago

Same here, thanks from me too!