-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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.11 support (to Daily PPA builds) #1591
Comments
We could probably address this by switching to either totalram_pages or totalhigh_pages. |
Or just removing the ensure debug subsystem from the spl. This code is no longer used (even by me) now that there are better tools available like ftrace, systemtap, oprofile, and perf. |
That is not possible because physmem is an alias for num_physpages. I have opened openzfs/spl#273 with a patch that addresses this failure. With that patch in place, the following failure will occur in ZFS:
This failure was caused by torvalds/linux@2233f31. |
I have opened #1639 with a patch that resolves the above issue. I am currently using ZFS with Linux 3.11-rc4. |
Commit torvalds/linux@2233f31 replaced ->readdir() with ->iterate() in struct file_operations. All filesystems must now use the new ->iterate method. To handle this the code was reworked to use the new ->iterate interface. Care was taken to keep the majority of changes confined to the ZPL layer which is already Linux specific. However, minor changes were required to the common zfs_readdir() function. Compatibility with older kernels was accomplished by adding versions of the trivial dir_emit* helper functions. Also the various *_readdir() functions were reworked in to wrappers which create a dir_context structure to pass to the new *_iterate() functions. Unfortunately, the new dir_emit* functions prevent us from passing a private pointer to the filldir function. The xattr directory code leveraged this ability through zfs_readdir() to generate the list of xattr names. Since we can no longer use zfs_readdir() a simplified zpl_xattr_readdir() function was added to perform the same task. Signed-off-by: Richard Yao <ryao@cs.stonybrook.edu> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #1653 Issue #1591
Support has been added for 3.11 and tested with 3.11-rc5. |
There is still a build failure when CONFIG_LZ4_DECOMPRESS=y or CONFIG_LZ4_COMPRESS=y is set. We need to rename the lz4_compress/lz4_decompress functions to workaround it. |
Just to confirm, packages in Daily PPA work for me with 3.11. Thank you all!
|
Commit torvalds/linux@2233f31 replaced ->readdir() with ->iterate() in struct file_operations. All filesystems must now use the new ->iterate method. To handle this the code was reworked to use the new ->iterate interface. Care was taken to keep the majority of changes confined to the ZPL layer which is already Linux specific. However, minor changes were required to the common zfs_readdir() function. Compatibility with older kernels was accomplished by adding versions of the trivial dir_emit* helper functions. Also the various *_readdir() functions were reworked in to wrappers which create a dir_context structure to pass to the new *_iterate() functions. Unfortunately, the new dir_emit* functions prevent us from passing a private pointer to the filldir function. The xattr directory code leveraged this ability through zfs_readdir() to generate the list of xattr names. Since we can no longer use zfs_readdir() a simplified zpl_xattr_readdir() function was added to perform the same task. Signed-off-by: Richard Yao <ryao@cs.stonybrook.edu> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes openzfs#1653 Issue openzfs#1591
As a heads-up, there are more changes coming in kernel 3.11. The current kernel modules fail to build against 3.11-rc1.
Full log: https://gist.github.com/jonathonf/6001198
Most pertinent parts:
Installed version:
The text was updated successfully, but these errors were encountered: