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

Add kernel 3.10 support (to Daily PPA builds) #1547

Closed
jonathonf opened this issue Jun 25, 2013 · 17 comments
Closed

Add kernel 3.10 support (to Daily PPA builds) #1547

jonathonf opened this issue Jun 25, 2013 · 17 comments
Labels
Type: Building Indicates an issue related to building binaries
Milestone

Comments

@jonathonf
Copy link
Contributor

Kernel 3.10 is onto rc7 (and rc8 can't be far away). At the moment, 0.6.1 kernel modules fail to build on 3.10.

SPL DKMS make.log (ZFS not generated due to SPL failure):

make[2]: Entering directory /var/lib/dkms/spl/0.6.1/build/module' make -C /lib/modules/3.10.0-031000rc7-generic/build SUBDIRS=pwdCONFIG_SPL=m modules make[3]: Entering directory/usr/src/linux-headers-3.10.0-031000rc7-generic'
CC [M] /var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-debug.o
CC [M] /var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.o
In file included from /var/lib/dkms/spl/0.6.1/build/include/sys/kmem.h:38:0,
from /var/lib/dkms/spl/0.6.1/build/include/sys/kstat.h:32,
from /var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:28:
/var/lib/dkms/spl/0.6.1/build/include/sys/vmsystm.h:77:8: error: redefinition of ‘struct vmalloc_info’
struct vmalloc_info {
^
In file included from /usr/src/linux-headers-3.10.0-031000rc7-generic/arch/x86/include/asm/io.h:195:0,
from /usr/src/linux-headers-3.10.0-031000rc7-generic/arch/x86/include/asm/realmode.h:5,
from /usr/src/linux-headers-3.10.0-031000rc7-generic/arch/x86/include/asm/acpi.h:32,
from /usr/src/linux-headers-3.10.0-031000rc7-generic/arch/x86/include/asm/fixmap.h:19,
from /usr/src/linux-headers-3.10.0-031000rc7-generic/arch/x86/include/asm/apic.h:12,
from /usr/src/linux-headers-3.10.0-031000rc7-generic/arch/x86/include/asm/smp.h:13,
from /usr/src/linux-headers-3.10.0-031000rc7-generic/arch/x86/include/asm/mmzone_64.h:10,
from /usr/src/linux-headers-3.10.0-031000rc7-generic/arch/x86/include/asm/mmzone.h:4,
from include/linux/mmzone.h:919,
from include/linux/gfp.h:4,
from include/linux/kmod.h:22,
from include/linux/module.h:13,
from /var/lib/dkms/spl/0.6.1/build/include/sys/kstat.h:28,
from /var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:28:
include/linux/vmalloc.h:173:8: note: originally defined here
struct vmalloc_info {
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c: In function ‘proc_dir_entry_match’:
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1126:15: error: dereferencing pointer to incomplete type
if (de->namelen != len)
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1129:32: error: dereferencing pointer to incomplete type
return !memcmp(name, de->name, len);
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c: In function ‘proc_dir_entry_find’:
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1137:16: error: dereferencing pointer to incomplete type
for (de = root->subdir; de; de = de->next)
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1137:37: error: dereferencing pointer to incomplete type
for (de = root->subdir; de; de = de->next)
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c: In function ‘proc_dir_entries’:
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1150:16: error: dereferencing pointer to incomplete type
for (de = root->subdir; de; de = de->next)
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1150:37: error: dereferencing pointer to incomplete type
for (de = root->subdir; de; de = de->next)
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c: In function ‘spl_proc_init’:
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1177:2: error: implicit declaration of function ‘create_proc_entry’ [-Werror=implicit-function-declaration]
proc_spl_kmem_slab = create_proc_entry("slab", 0444, proc_spl_kmem);
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1177:21: warning: assignment makes pointer from integer without a cast [enabled by default]
proc_spl_kmem_slab = create_proc_entry("slab", 0444, proc_spl_kmem);
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1181:27: error: dereferencing pointer to incomplete type
proc_spl_kmem_slab->proc_fops = &proc_slab_operations;
^
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c: In function ‘proc_dir_entry_match’:
/var/lib/dkms/spl/0.6.1/build/module/spl/../../module/spl/spl-proc.c:1130:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^

@dajhorn
Copy link
Contributor

dajhorn commented Jun 25, 2013

I will look at doing a daily build for Saucy when its first alpha is released; maybe next week.

@chrisrd
Copy link
Contributor

chrisrd commented Jun 25, 2013

See Also: #1494

@devsk
Copy link

devsk commented Jul 1, 2013

3.10 stable is out today! Just fyi.

@jonathonf
Copy link
Contributor Author

Saucy Alpha 1 has also been released. ;)

@behlendorf
Copy link
Contributor

Now that 3.10 is out I'll make sure the Linux compat changes finish getting reviewed and merged. It may take a week or two.

@behlendorf
Copy link
Contributor

Linux 3.10 compatibility has been merged in to master. @dajhorn can pick this up for Saucy when he's ready.

openzfs/spl@5bc941f Merge branch 'linux-3.10'
openzfs/spl@f2a745c Linux 3.10 compat: Do not rely on struct proc_dir_entry definition
openzfs/spl@79a7ab2 Linux 3.10 compat: add missing include of linux/slab.h
openzfs/spl@1ddf972 Linux 3.10 compat: replace PDE()->data with PDE_DATA()
openzfs/spl@c02ab72 Linux 3.10 compat: struct vmalloc_info moved
a1d9543 3.10 API change: block_device_operations->release() returns void

dajhorn added a commit to zfsonlinux/pkg-spl that referenced this issue Jul 11, 2013
@jonathonf
Copy link
Contributor Author

Hi @dajhorn , thanks again for the PPA work! I think you might have uploaded the wrong branch to the PPA as I'm getting the same build error. Using your repo and after co snapshot/ubuntu/saucy, git-buildpackage completes successfully. When installing the resulting .debs, DKMS then builds the modules successfully.

@dajhorn
Copy link
Contributor

dajhorn commented Jul 11, 2013

@jonathonf, that is only the spl-linux package. The zfs-linux package is still pending.

@jonathonf
Copy link
Contributor Author

@dajhorn The spl-linux packages from the Daily PPA don't build correctly (same errors as without the kernel 3.10 patches), so I'm using the zfs-linux packages from the Stable PPA (Raring label) together with spl-linux packages manually built with git-buildpackage from your pkg-spl repo. This works, and I have working kernel modules.

Essentially what I'm trying to say is the patches work but the version in the Daily PPA does not. :) Unless I'm mistaken, the lack of zfs-linux for Saucy in the Daily PPA shouldn't make a difference?

@dajhorn
Copy link
Contributor

dajhorn commented Jul 12, 2013

@jonathonf, please post a build transcript of the failure to a gist. I'm trying to run down some corner cases in Saucy, and it is always better to look at such things early.

@jonathonf
Copy link
Contributor Author

The DKMS make.log for 0.6.1-2saucy1 from the Daily PPA: https://gist.github.com/jonathonf/5980456

spl:
  Installed: 0.6.1-2~saucy~1.gbp2c8a81
    Candidate: 0.6.1-2~saucy~1.gbp2c8a81
  Version table:
 *** 0.6.1-2~saucy~1.gbp2c8a81 0
       1001 http://ppa.launchpad.net/zfs-native/daily/ubuntu/ saucy/main amd64 Packages
        100 /var/lib/dpkg/status
     0.6.1-1~raring 0
       1001 http://ppa.launchpad.net/zfs-native/stable/ubuntu/ raring/main amd64 Packages

zfs-dkms:
  Installed: 0.6.1-1~raring
  Candidate: 0.6.1-1~raring
  Version table:
 *** 0.6.1-1~raring 0
       1001 http://ppa.launchpad.net/zfs-native/stable/ubuntu/ raring/main amd64 Packages
        100 /var/lib/dpkg/status

@dajhorn
Copy link
Contributor

dajhorn commented Jul 12, 2013

@jonathonf, I have a reproducer, thanks.

@dajhorn
Copy link
Contributor

dajhorn commented Jul 13, 2013

The PPA now has spl-linux and zfs-linux packages for Saucy. The earlier failure was caused by a missing --auto-commit switch, which is required for snapshot builds.

Per usual, the meta and supporting packages will be published near the Saucy beta release.

@devsk
Copy link

devsk commented Jul 13, 2013

For gentoo folks, the bug is filed here:

https://bugs.gentoo.org/show_bug.cgi?id=476476

@devsk
Copy link

devsk commented Jul 15, 2013

Richard Yao gentoo-dev 2013-07-14 11:51:00 UTC
I have committed sys-kernel/spl-0.6.1-r3 with Linux 3.10 support.

Gentoo has support for 3.10 now. Thanks Richard!

@Diablo-D3
Copy link

I'm on Debian, and this has not been fixed yet (Sid now has 3.10 available)

@behlendorf
Copy link
Contributor

0.6.2 was just released and supports 3.10

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Building Indicates an issue related to building binaries
Projects
None yet
Development

No branches or pull requests

6 participants