** Description changed:

  [Impact]
  
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/extents.c:10: warning: "MAX" 
redefined
-    10 | #define MAX(X, Y)       ((X) <= (Y) ? (Y) : (X))
-       | 
+    10 | #define MAX(X, Y)       ((X) <= (Y) ? (Y) : (X))
+       |
  In file included from ./include/linux/kernel.h:28,
-                  from ./include/linux/cpumask.h:11,
-                  from ./arch/x86/include/asm/paravirt.h:21,
-                  from ./arch/x86/include/asm/irqflags.h:80,
-                  from ./include/linux/irqflags.h:18,
-                  from ./include/linux/spinlock.h:59,
-                  from ./include/linux/wait.h:9,
-                  from ./include/linux/wait_bit.h:8,
-                  from ./include/linux/fs.h:6,
-                  from ./include/linux/highmem.h:5,
-                  from ./include/linux/bvec.h:10,
-                  from ./include/linux/blk_types.h:10,
-                  from ./include/linux/buffer_head.h:12,
-                  from 
/var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/extents.c:6:
+                  from ./include/linux/cpumask.h:11,
+                  from ./arch/x86/include/asm/paravirt.h:21,
+                  from ./arch/x86/include/asm/irqflags.h:80,
+                  from ./include/linux/irqflags.h:18,
+                  from ./include/linux/spinlock.h:59,
+                  from ./include/linux/wait.h:9,
+                  from ./include/linux/wait_bit.h:8,
+                  from ./include/linux/fs.h:6,
+                  from ./include/linux/highmem.h:5,
+                  from ./include/linux/bvec.h:10,
+                  from ./include/linux/blk_types.h:10,
+                  from ./include/linux/buffer_head.h:12,
+                  from 
/var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/extents.c:6:
  ./include/linux/minmax.h:330: note: this is the location of the previous 
definition
-   330 | #define MAX(a,b) __cmp(max,a,b)
-       | 
+   330 | #define MAX(a,b) __cmp(max,a,b)
+       |
  
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘apfs_sb_set_blocksize’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:69:39: error: 
passing argument 1 of ‘set_blocksize’ from incompatible pointer type 
[-Werror=incompatible-pointer-types]
-    69 |         if (set_blocksize(APFS_NXI(sb)->nx_bdev, size))
-       |                           ~~~~~~~~~~~~^~~~~~~~~
-       |                                       |
-       |                                       struct block_device *
+    69 |         if (set_blocksize(APFS_NXI(sb)->nx_bdev, size))
+       |                           ~~~~~~~~~~~~^~~~~~~~~
+       |                                       |
+       |                                       struct block_device *
  In file included from 
/var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:7:
  ./include/linux/blkdev.h:1545:32: note: expected ‘struct file *’ but argument 
is of type ‘struct block_device *’
-  1545 | int set_blocksize(struct file *file, int size);
-       |                   ~~~~~~~~~~~~~^~~~
+  1545 | int set_blocksize(struct file *file, int size);
+       |                   ~~~~~~~~~~~~~^~~~
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘apfs_update_software_info’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:282:36: error: 
‘struct super_block’ has no member named ‘s_bdev_handle’; did you mean 
‘s_bdev_file’?
-   282 |         sbi->sbi_bdev_handle = sb->s_bdev_handle;
-       |                                    ^~~~~~~~~~~~~
-       |                                    s_bdev_file
+   282 |         sbi->sbi_bdev_handle = sb->s_bdev_handle;
+       |                                    ^~~~~~~~~~~~~
+       |                                    s_bdev_file
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘apfs_unmap_main_super’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:328:17: error: 
implicit declaration of function ‘bdev_release’; did you mean ‘seq_release’? 
[-Werror=implicit-function-declaration]
-   328 |                 bdev_release(sbi->sbi_bdev_handle);
-       |                 ^~~~~~~~~~~~
-       |                 seq_release
+   328 |                 bdev_release(sbi->sbi_bdev_handle);
+       |                 ^~~~~~~~~~~~
+       |                 seq_release
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/unicode.c:17: warning: "MIN" 
redefined
-    17 | #define MIN(X, Y)       ((X) <= (Y) ? (X) : (Y))
-       | 
+    17 | #define MIN(X, Y)       ((X) <= (Y) ? (X) : (Y))
+       |
  In file included from ./include/linux/kernel.h:28,
-                  from 
/var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/unicode.c:9:
+                  from 
/var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/unicode.c:9:
  ./include/linux/minmax.h:329: note: this is the location of the previous 
definition
-   329 | #define MIN(a,b) __cmp(min,a,b)
-       | 
+   329 | #define MIN(a,b) __cmp(min,a,b)
+       |
  
  var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘init_inodecache’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:796:49: error: 
‘SLAB_MEM_SPREAD’ undeclared (first use in this function)
-   796 |                                                 
SLAB_MEM_SPREAD|SLAB_ACCOUNT),
-       |                                                 ^~~~~~~~~~~~~~~
+   796 |                                                 
SLAB_MEM_SPREAD|SLAB_ACCOUNT),
+       |                                                 ^~~~~~~~~~~~~~~
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:796:49: note: each 
undeclared identifier is reported only once for each function it appears in
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘apfs_attach_nxi’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:1534:26: error: 
implicit declaration of function ‘bdev_open_by_path’; did you mean 
‘bdev_file_open_by_path’? [-Werror=implicit-function-declaration]
-  1534 |                 handle = bdev_open_by_path(dev_name, mode, 
&apfs_fs_type, NULL);
-       |                          ^~~~~~~~~~~~~~~~~
-       |                          bdev_file_open_by_path
+  1534 |                 handle = bdev_open_by_path(dev_name, mode, 
&apfs_fs_type, NULL);
+       |                          ^~~~~~~~~~~~~~~~~
+       |                          bdev_file_open_by_path
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:1534:24: warning: 
assignment to ‘struct bdev_handle *’ from ‘int’ makes pointer from integer 
without a cast [-Wint-conversion]
-  1534 |                 handle = bdev_open_by_path(dev_name, mode, 
&apfs_fs_type, NULL);
-       |                        ^
+  1534 |                 handle = bdev_open_by_path(dev_name, mode, 
&apfs_fs_type, NULL);
+       |                        ^
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:1535:30: error: 
invalid use of undefined type ‘struct bdev_handle’
-  1535 |                 bdev = handle->bdev;
-       |                              ^~
+  1535 |                 bdev = handle->bdev;
+       |                              ^~
  
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/transaction.c: In function 
‘apfs_checkpoint_end’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/transaction.c:371:48: error: 
‘struct block_device’ has no member named ‘bd_inode’
-   371 |         struct inode *bdev_inode = nxi->nx_bdev->bd_inode;
-       |                                                ^~
+   371 |         struct inode *bdev_inode = nxi->nx_bdev->bd_inode;
+       |                                                ^~
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/transaction.c: In function 
‘apfs_end_buffer_write_sync’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/transaction.c:546:9: error: 
implicit declaration of function ‘page_mkclean’; did you mean ‘pte_mkclean’? 
[-Werror=implicit-function-declaration]
-   546 |         page_mkclean(page);
-       |         ^~~~~~~~~~~~
-       |         pte_mkclean
- 
+   546 |         page_mkclean(page);
+       |         ^~~~~~~~~~~~
+       |         pte_mkclean
  
  [Test case]
  
  Install the latest linux-6.11 kernel on Noble:
  
  $ sudo add-apt-repository ppa:canonical-kernel-team/ppa
  $ sudo apt update
  $ sudo apt install linux-image-6.11.0-12-generic \
-                    linux-modules-6.11.0-12-generic \
-                    linux-modules-extra-6.11.0-12-generic \
-                    linux-headers-6.11.0-12-generic
+                    linux-modules-6.11.0-12-generic \
+                    linux-modules-extra-6.11.0-12-generic \
+                    linux-headers-6.11.0-12-generic
  
  Install apfs-dkms:
  
  $ sudo apt install apfs-dkms
+ 
+ Load the module:
+ 
+ $ sudo modprobe apfs
+ 
+ Verify the filesystem has been registered properly:
+ 
+ $ grep apfs /proc/filesystems
  
  
  [Fix]
  
  Backport upstream patches to properly support the new linux 6.11 ABI.
  
  [Regression potential]
  
  We may experience regressions in systems that are using the Apple file
  system module (apfs), especially with kernels >= 6.8 kernel.

** Description changed:

  [Impact]
  
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/extents.c:10: warning: "MAX" 
redefined
     10 | #define MAX(X, Y)       ((X) <= (Y) ? (Y) : (X))
        |
  In file included from ./include/linux/kernel.h:28,
                   from ./include/linux/cpumask.h:11,
                   from ./arch/x86/include/asm/paravirt.h:21,
                   from ./arch/x86/include/asm/irqflags.h:80,
                   from ./include/linux/irqflags.h:18,
                   from ./include/linux/spinlock.h:59,
                   from ./include/linux/wait.h:9,
                   from ./include/linux/wait_bit.h:8,
                   from ./include/linux/fs.h:6,
                   from ./include/linux/highmem.h:5,
                   from ./include/linux/bvec.h:10,
                   from ./include/linux/blk_types.h:10,
                   from ./include/linux/buffer_head.h:12,
                   from 
/var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/extents.c:6:
  ./include/linux/minmax.h:330: note: this is the location of the previous 
definition
    330 | #define MAX(a,b) __cmp(max,a,b)
        |
  
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘apfs_sb_set_blocksize’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:69:39: error: 
passing argument 1 of ‘set_blocksize’ from incompatible pointer type 
[-Werror=incompatible-pointer-types]
     69 |         if (set_blocksize(APFS_NXI(sb)->nx_bdev, size))
        |                           ~~~~~~~~~~~~^~~~~~~~~
        |                                       |
        |                                       struct block_device *
  In file included from 
/var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:7:
  ./include/linux/blkdev.h:1545:32: note: expected ‘struct file *’ but argument 
is of type ‘struct block_device *’
   1545 | int set_blocksize(struct file *file, int size);
        |                   ~~~~~~~~~~~~~^~~~
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘apfs_update_software_info’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:282:36: error: 
‘struct super_block’ has no member named ‘s_bdev_handle’; did you mean 
‘s_bdev_file’?
    282 |         sbi->sbi_bdev_handle = sb->s_bdev_handle;
        |                                    ^~~~~~~~~~~~~
        |                                    s_bdev_file
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘apfs_unmap_main_super’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:328:17: error: 
implicit declaration of function ‘bdev_release’; did you mean ‘seq_release’? 
[-Werror=implicit-function-declaration]
    328 |                 bdev_release(sbi->sbi_bdev_handle);
        |                 ^~~~~~~~~~~~
        |                 seq_release
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/unicode.c:17: warning: "MIN" 
redefined
     17 | #define MIN(X, Y)       ((X) <= (Y) ? (X) : (Y))
        |
  In file included from ./include/linux/kernel.h:28,
                   from 
/var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/unicode.c:9:
  ./include/linux/minmax.h:329: note: this is the location of the previous 
definition
    329 | #define MIN(a,b) __cmp(min,a,b)
        |
  
  var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘init_inodecache’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:796:49: error: 
‘SLAB_MEM_SPREAD’ undeclared (first use in this function)
    796 |                                                 
SLAB_MEM_SPREAD|SLAB_ACCOUNT),
        |                                                 ^~~~~~~~~~~~~~~
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:796:49: note: each 
undeclared identifier is reported only once for each function it appears in
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c: In function 
‘apfs_attach_nxi’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:1534:26: error: 
implicit declaration of function ‘bdev_open_by_path’; did you mean 
‘bdev_file_open_by_path’? [-Werror=implicit-function-declaration]
   1534 |                 handle = bdev_open_by_path(dev_name, mode, 
&apfs_fs_type, NULL);
        |                          ^~~~~~~~~~~~~~~~~
        |                          bdev_file_open_by_path
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:1534:24: warning: 
assignment to ‘struct bdev_handle *’ from ‘int’ makes pointer from integer 
without a cast [-Wint-conversion]
   1534 |                 handle = bdev_open_by_path(dev_name, mode, 
&apfs_fs_type, NULL);
        |                        ^
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/super.c:1535:30: error: 
invalid use of undefined type ‘struct bdev_handle’
   1535 |                 bdev = handle->bdev;
        |                              ^~
  
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/transaction.c: In function 
‘apfs_checkpoint_end’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/transaction.c:371:48: error: 
‘struct block_device’ has no member named ‘bd_inode’
    371 |         struct inode *bdev_inode = nxi->nx_bdev->bd_inode;
        |                                                ^~
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/transaction.c: In function 
‘apfs_end_buffer_write_sync’:
  /var/lib/dkms/linux-apfs-rw/0.3.2-0ubuntu5/build/transaction.c:546:9: error: 
implicit declaration of function ‘page_mkclean’; did you mean ‘pte_mkclean’? 
[-Werror=implicit-function-declaration]
    546 |         page_mkclean(page);
        |         ^~~~~~~~~~~~
        |         pte_mkclean
  
  [Test case]
  
  Install the latest linux-6.11 kernel on Noble:
  
  $ sudo add-apt-repository ppa:canonical-kernel-team/ppa
  $ sudo apt update
  $ sudo apt install linux-image-6.11.0-12-generic \
                     linux-modules-6.11.0-12-generic \
                     linux-modules-extra-6.11.0-12-generic \
                     linux-headers-6.11.0-12-generic
  
  Install apfs-dkms:
  
  $ sudo apt install apfs-dkms
  
  Load the module:
  
  $ sudo modprobe apfs
  
  Verify the filesystem has been registered properly:
  
  $ grep apfs /proc/filesystems
  
+ The same procedure can be repeated on linux-6.8 to test for possible
+ regressions.
  
  [Fix]
  
  Backport upstream patches to properly support the new linux 6.11 ABI.
  
  [Regression potential]
  
  We may experience regressions in systems that are using the Apple file
  system module (apfs), especially with kernels >= 6.8 kernel.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2090930

Title:
  apfs-dkms FTBS in Noble with the linux-6.11-hwe kernel

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-apfs-rw/+bug/2090930/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to