-
Notifications
You must be signed in to change notification settings - Fork 178
support for recent stable kernels needed. #5
Comments
Thanks for the bug report seriv. As you know, the kernel ABI is constantly changing. I have tried to stay current with the latest kernels in the common distros but I haven't gotten to FC13 yes. If you could post patches for your first set of fixes I'll try to make sure they get in to the next official tag. |
Thank you, I did not saw how to post patches but by forking.Sergey. |
Thanks seriv. I'm new to github as well but I think forking is absolutely the right way to handle this. I'm in the process of update the code base to the latest OpenSolaris version of ZFS but once I finish that I'll review your patches and look in to the 2.6.33 build issues. |
Brian, I did some testing. I pulled kernel 2.6.34 from kernel.org and compiled it with configs of FC-13. Copied /boot/config-2.6.33.5-112.fc13.x86_64 and started with "make oldconfig < /dev/null". And I had 'insmod: : error inserting ... /spl.ko’: -1 Bad address" But when I compiled starting with configs of RHEL-6 beta, spl passes all self-checks with 2.6.34 kernel sources! |
Fixed by commit 79a3bf1
Fixed by commit 6801b71
This is actually an issue with autoconf-2.64, or at least my usage of it. If you need to run autogen.sh make sure you use autoconf-2.63 of earlier. Otherwise just run the configure script as provided which was generated with autoconf-2.63 and everything should be fine. |
Linux 3.2 has different number parameters to scatterwalk_map and unmap
Spl rely on ctl_name in the ctl_table structure in include/linux/sysctl.h which is eliminated starting from 2.6.33 stable (commit 86926d0096279b9739ceeff40f68d3c33b9119a9).
It does not check if linux kernel has fix for O_DSYNC flag, which was introduced by commit 6b2f3d1f769be5779b479c37800229d9a4809fc3.
On Fedora 13, with kernel 2.6.33.3-85.fc13 after fixing these 2 problems I run into next one:
{{{
$ make rpm
...
CC [M] /tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.o
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c: In function 'fd_uninstall':
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c:427: error: 'struct files_struct' has no member named 'max_fds'
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c:430: error: 'struct files_struct' has no member named 'fd'
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c:434: error: 'struct files_struct' has no member named 'fd'
/tmp/spl-build-seriv-jx6WvnKt/BUILD/spl-0.4.9/module/splat/splat-vnode.c:435: error: 'struct files_struct' has no member named 'close_on_exec'
...
}}}
I don't know how to fix it.
The text was updated successfully, but these errors were encountered: