mod_unload modversions ARMv6 p2v8 中的 p2v8 代表什么?
What stands p2v8 in mod_unload modversions ARMv6 p2v8 for?
在为 qemu 编译内核后,我得到了很多如下所列的错误:
ipv6: version magic '3.18.11-hypriotos+ mod_unload modversions ARMv6 '
should be '3.18.11-hypriotos+ mod_unload modversions ARMv6 p2v8 '
显然我的内核和 Hypriotos 内核有些不同。 p2v8
是什么意思?以及如何在我的内核中启用它?
去arch/arm/include/asm/module.h. It's added when CONFIG_ARM_PATCH_PHYS_VIRT
is set. So you obviously need this config to be enabled. You can read the description of this option in arch/arm/Kconfig
看看自己
但是请记住,如果您使用的内核源代码与用于主内核构建的内核源代码不同,那么即使您的模块已成功加载,您也可能会遇到奇怪的问题。
#define VERMAGIC_STRING \
UTS_RELEASE "4.4.76 SMP mod_unload ARMv7 p2v8 " \
MODULE_VERMAGIC_SMP MODULE_VERMAGIC_PREEMPT \
MODULE_VERMAGIC_MODULE_UNLOAD MODULE_VERMAGIC_MODVERSIONS \
MODULE_ARCH_VERMAGIC
#endif
在为 qemu 编译内核后,我得到了很多如下所列的错误:
ipv6: version magic '3.18.11-hypriotos+ mod_unload modversions ARMv6 '
should be '3.18.11-hypriotos+ mod_unload modversions ARMv6 p2v8 '
显然我的内核和 Hypriotos 内核有些不同。 p2v8
是什么意思?以及如何在我的内核中启用它?
去arch/arm/include/asm/module.h. It's added when CONFIG_ARM_PATCH_PHYS_VIRT
is set. So you obviously need this config to be enabled. You can read the description of this option in arch/arm/Kconfig
但是请记住,如果您使用的内核源代码与用于主内核构建的内核源代码不同,那么即使您的模块已成功加载,您也可能会遇到奇怪的问题。
#define VERMAGIC_STRING \
UTS_RELEASE "4.4.76 SMP mod_unload ARMv7 p2v8 " \
MODULE_VERMAGIC_SMP MODULE_VERMAGIC_PREEMPT \
MODULE_VERMAGIC_MODULE_UNLOAD MODULE_VERMAGIC_MODVERSIONS \
MODULE_ARCH_VERMAGIC
#endif