Message ID | 20211222213052.6771-3-zohar@linux.ibm.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 9be6dc8059bb235ffb0666690a26c0df15cc6d9e |
Headers | show |
Series | selftest/kexec: minor update to the existing test | expand |
> First check /lib/modules/`uname -r`/config, before using the IKCONFIG. > In addition, the configs.ko might be compressed. Fix the configs.ko > name. > Signed-off-by: Mimi Zohar <zohar@linux.ibm.com> > --- > Distros: is storing the Kconfig in /lib/modules/`uname -r`/config common? > tools/testing/selftests/kexec/kexec_common_lib.sh | 13 +++++++++---- > 1 file changed, 9 insertions(+), 4 deletions(-) > diff --git a/tools/testing/selftests/kexec/kexec_common_lib.sh b/tools/testing/selftests/kexec/kexec_common_lib.sh > index 43017cfe88f7..5a1b8ae04c64 100755 > --- a/tools/testing/selftests/kexec/kexec_common_lib.sh > +++ b/tools/testing/selftests/kexec/kexec_common_lib.sh > @@ -138,15 +138,20 @@ kconfig_enabled() > return 0 > } > -# Attempt to get the kernel config first via proc, and then by > -# extracting it from the kernel image or the configs.ko using > -# scripts/extract-ikconfig. > +# Attempt to get the kernel config first by checking the modules directory > +# then via proc, and finally by extracting it from the kernel image or the > +# configs.ko using scripts/extract-ikconfig. > # Return 1 for found. > get_kconfig() > { > local proc_config="/proc/config.gz" > local module_dir="/lib/modules/`uname -r`" > - local configs_module="$module_dir/kernel/kernel/configs.ko" > + local configs_module="$module_dir/kernel/kernel/configs.ko*" I wonder if * will later work: if [ ! -f $configs_module ]; then But there should be just one variant: either configs.ko or configs.ko.xz (or something other), so it should work, right? Thus Reviewed-by: Petr Vorel <pvorel@suse.cz> Kind regards, Petr > + > + if [ -f $module_dir/config ]; then > + IKCONFIG=$module_dir/config > + return 1 > + fi > if [ ! -f $proc_config ]; then > modprobe configs > /dev/null 2>&1
diff --git a/tools/testing/selftests/kexec/kexec_common_lib.sh b/tools/testing/selftests/kexec/kexec_common_lib.sh index 43017cfe88f7..5a1b8ae04c64 100755 --- a/tools/testing/selftests/kexec/kexec_common_lib.sh +++ b/tools/testing/selftests/kexec/kexec_common_lib.sh @@ -138,15 +138,20 @@ kconfig_enabled() return 0 } -# Attempt to get the kernel config first via proc, and then by -# extracting it from the kernel image or the configs.ko using -# scripts/extract-ikconfig. +# Attempt to get the kernel config first by checking the modules directory +# then via proc, and finally by extracting it from the kernel image or the +# configs.ko using scripts/extract-ikconfig. # Return 1 for found. get_kconfig() { local proc_config="/proc/config.gz" local module_dir="/lib/modules/`uname -r`" - local configs_module="$module_dir/kernel/kernel/configs.ko" + local configs_module="$module_dir/kernel/kernel/configs.ko*" + + if [ -f $module_dir/config ]; then + IKCONFIG=$module_dir/config + return 1 + fi if [ ! -f $proc_config ]; then modprobe configs > /dev/null 2>&1
First check /lib/modules/`uname -r`/config, before using the IKCONFIG. In addition, the configs.ko might be compressed. Fix the configs.ko name. Signed-off-by: Mimi Zohar <zohar@linux.ibm.com> --- Distros: is storing the Kconfig in /lib/modules/`uname -r`/config common? tools/testing/selftests/kexec/kexec_common_lib.sh | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-)