On 13. 08. 26, 7:36, Dave Young wrote:
In case linux banner can not be found in vmlinux for some reason.
The fallback chcking of "Linux version" failed for kernel 7.x with
below error msg:
WARNING: kernel version inconsistency between vmlinux and dumpfile
crash: incompatible arguments: vmlinux is not SMP -- vmcore is SMP
Not sure how to reproduce, tested by forcing get_linux_banner_from_vmlinux to return
false.
Add "Linux version 7" to fix it.
Fixes:
https://github.com/crash-utility/crash/issues/232
Reported-by: Jiri Slaby <jirislaby(a)gmail.com>
Signed-off-by: Dave Young <yangrr.2009(a)tsinghua.org.cn>
---
kernel.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: crash/kernel.c
===================================================================
--- crash.orig/kernel.c 2026-08-13 13:26:26.858739906 +0800
+++ crash/kernel.c 2026-08-13 13:27:30.450848208 +0800
@@ -1400,7 +1400,8 @@
!strstr(buffer, "Linux version 3.") &&
!strstr(buffer, "Linux version 4.") &&
!strstr(buffer, "Linux version 5.") &&
- !strstr(buffer, "Linux version 6."))
+ !strstr(buffer, "Linux version 6.") &&
+ !strstr(buffer, "Linux version 7."))
Note I added 8. as well in:
https://github.com/crash-utility/crash/commit/c9abcbcb58a9f36dd0a1680e277...
The test should be likely more generalised. To something like:
char *p = strstr(buffer, "Linux version ");
if (!(p && p[14] >= '2' && p[14] <= '9' &&
p[15] == '.')) {
Because adding a new number every major release is PITA -- it's not that
rare nowadays.
continue;
if (strstr(buffer, kt->proc_version)) {
--
js