Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Complile error: not import "VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver" namespace #15081

Closed
shivabohemian opened this issue Jul 19, 2023 · 4 comments
Labels
Type: Defect Incorrect behavior (e.g. crash, hang)

Comments

@shivabohemian
Copy link

System information

Type Version/Name
Distribution Name Debian GNU/Linux
Distribution Version 11 (bullseye)
Kernel Version rockchip kernel 5.10.110
Architecture arm64
OpenZFS Version 2.1.12

Describe the problem you're observing

When I try to compile ZFS with Rockchip Kernel 5.10, I encountered an error while using the './configure' command. Upon my investigation, I found that it uses the 'EXPORT_SYMBOL_NS' macro when exporting some functions like 'kernel_read', which causes ZFS compilation to fail. What should I do to successfully compile ZFS?

Describe how to reproduce the problem

Always. By the way, the kernel I used: rockchip-linux/kernel@d483eed

Include any warning/errors/backtraces from the system logs

configure error:
截屏2023-07-19 22 21 50

this is the error in build.log:
The error:
ERROR: modpost: module clear_inode uses symbol clear_inode from namespace VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver, but does not import it.
ERROR: modpost: module inode_set_flags uses symbol inode_set_flags from namespace VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver, but does not import it.
ERROR: modpost: module kernel_read uses symbol kernel_read from namespace VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver, but does not import it.
ERROR: modpost: module kernel_write uses symbol kernel_write from namespace VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver, but does not import it.
ERROR: modpost: module timestamp_truncate uses symbol timestamp_truncate from namespace VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver, but does not import it.

@shivabohemian shivabohemian added the Type: Defect Incorrect behavior (e.g. crash, hang) label Jul 19, 2023
@rincebrain
Copy link
Contributor

Think you'd get to go through and patch everywhere with a reference to any of those with a MODULE_IMPORT_NS(etc).

@shivabohemian
Copy link
Author

Thank you for your response! It sounds good that I patch the source file with a MODULE_IMPORT_NS.
Actually I'm a beginner, and I'd like to know what steps I should take to pass the configure check.
There are many "m4" macro files used for checks, is there a convenient way using MODULE_IMPORT_NS to make unified modifications?

@linnaea
Copy link

linnaea commented Jul 24, 2023

See here radxa/kernel#54 (comment)

Rockchip BSP kernel is forked from Android Common Kernel, don't think ZFS would support the Android kernel any time soon.

@shivabohemian
Copy link
Author

See here radxa/kernel#54 (comment)

Rockchip BSP kernel is forked from Android Common Kernel, don't think ZFS would support the Android kernel any time soon.

Wow, I'll try. Thank you so much for your help!

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Type: Defect Incorrect behavior (e.g. crash, hang)
Projects
None yet
Development

No branches or pull requests

3 participants