How to check Charon-SSP kernel module version
Description
Charon-SSP uses kernel modules to enable various product functions. In particular
Charon-SSP/4U+ and Charon-SSP/4V+ (kernel module dune.ko). This option is only available for Linux versions before RHEL 10.
PCI pass-through for Digi serial boards and GPIB controllers (kernel modules ppt_kdigi-<kernel-version>.ko and ppt_kni-<kernel-version>.ko)
MMU passthrough (kernel module mmu_kapi-<kernel-version>.ko)
The installation of Charon-SSP provides these kernel modules for specific kernel versions. If the Charon host system runs a different kernel version than the selection provided, the functionality associated with the kernel modules cannot be used.
During installation or upgrade on a compatible Linux system (i.e., a host system with a compatible kernel version), Charon-SSP <= 6.2.1 creates a link in /opt/charon-ssp/ssp-[4u|4v] that points to the correct kernel module:
/opt/charon-ssp/ssp-[4u|4v]/mmu_kapi.ko points to a kernel module in /opt/charon-ssp/ssp-[4u|4v]/mmu/
/opt/charon-ssp/ssp-[4u|4v]/ppt_kdigi.ko points to a kernel module in /opt/charon-ssp/ssp-[4u|4v]/pbxda/
/opt/charon-ssp/ssp-[4u|4v]/ppt_kni.ko points to a kernel module in /opt/charon-ssp/ssp-[4u|4v]/gpib
If later, the kernel version is changed to a non-supported version, the loading of the module will fail.
Please note that the link to the module is only created/updated during installation or upgrade of Charon-SSP. Should it be needed to point the link to a different kernel module provided by the currently installed Charon version, this must be done manually or by reinstalling the current Charon-SSP version. In version higher than 6.2.1 it is planned to improve this behavior.
This article shows how to check the exact kernel version for which the kernel modules have been built, and to compare their version with the version of the running Linux kernel.
Step-by-step guide
Identify the version of the running Linux kernel:
$ uname -rFind the kernel modules provided with your Linux version and variant. Example for Charon-SSP/4U:
$ find /opt/charon-ssp/ssp-4u/ -name *.koIn newer versions of Charon-SSP, the kernel version for which the module was built is already included in the module name. For older versions and for more detailed information you can use the modinfo command. For example:
$ modinfo /opt/charon-ssp/ssp-4u/mmu/mmu_kapi-6.12.0-211.ko |grep -i version
Example with command outputs for Charon-SSP 6.2.1:
$ uname -r
7.0.12-201.fc44.x86_64
$ find /opt/charon-ssp/ssp-4u/ -name *.ko
/opt/charon-ssp/ssp-4u/mmu/mmu_kapi-6.1.61-85.ko
/opt/charon-ssp/ssp-4u/mmu/mmu_kapi-6.12.0-124.ko
/opt/charon-ssp/ssp-4u/mmu/mmu_kapi-6.12.0-211.ko
/opt/charon-ssp/ssp-4u/mmu/mmu_kapi-6.12.0-55.ko
/opt/charon-ssp/ssp-4u/gpib/ppt_kni-6.12.0-124.ko
/opt/charon-ssp/ssp-4u/gpib/ppt_kni-6.12.0-211.ko
/opt/charon-ssp/ssp-4u/gpib/ppt_kni-6.12.0-55.ko
/opt/charon-ssp/ssp-4u/pbxda/ppt_kdigi-6.12.0-124.ko
/opt/charon-ssp/ssp-4u/pbxda/ppt_kdigi-6.12.0-211.ko
/opt/charon-ssp/ssp-4u/pbxda/ppt_kdigi-6.12.0-55.ko
$ modinfo /opt/charon-ssp/ssp-4u/mmu/mmu_kapi-6.12.0-211.ko |grep version
rhelversion: 10.2
srcversion: 025628455F97A3618DF9257
vermagic: 6.12.0-211.7.3.el10_2.x86_64 SMP preempt mod_unload modversions
|
In the example above, the kernel version (7.0.12-201.fc44.x86_64) does not match the version of any of the kernel modules. Hence, MMU passthrough, or any of the other functions depending on kernel modules, cannot be enabled on the present host system.
Related articles