Bug 50608 - kernel version inconsistency between vmlinux and dumpfile
Summary: kernel version inconsistency between vmlinux and dumpfile
Status: NEW
Alias: None
Product: Branch p10
Classification: Unclassified
Component: crash (show other bugs)
Version: не указана
Hardware: x86_64 Linux
: P5 minor
Assignee: Vitaly Chikunov
QA Contact: qa-p10@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-06-11 19:09 MSK by Yaroslav
Modified: 2024-06-17 10:17 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yaroslav 2024-06-11 19:09:34 MSK
Добрый вечер!
Используется дистрибутив «Альт Виртуализация» 10.2, без обновлений пакетов

Для того, чтобы получить трассировку вызовов приведших к kernel panic, установил из репозитория p10 пакет kdump-tools и добавил в параметр GRUB_CMDLINE_LINUX_DEFAULT значение "crashkernel=256M" , все по статье https://www.altlinux.org/Kernel/Kdump
Предварительно убедился, что ядро 6.1.85-un-def-alt1 из iso собрано с необходимыми флагами ( CONFIG_DEBUG_INFO CONFIG_CRASH_DUMP CONFIG_PROC_VMCORE )
Пакет успешно встал, после перезагрузки kdump-config status рапортует о работоспособности

И действительно, при принудительной инициации kernel panic через echo c > /proc/sysrq-trigger резервное ядро подключается, в /var/crash/{timestamp}/ собирается информация о вызовах ядра и мини-дамп (если я правильно понял, то там содержимое /proc/vmcore)

Но при попытке использовать образ ядра в несжатом виде vmlinux из пакета kernel-image-un-def-debuginfo, который скачал из https://packages.altlinux.org/en/p10/srpms/kernel-image-un-def/rpms/3061376819902378427 , утилита crash пишет в консоль

WARNING: kernel relocated [560MB]: patching 133791 gdb minimal_symbol values
WARNING: kernel version inconsistency between vmlinux and dumpfile
please wait... (gathering task table data)
crash: invalid structure member offset: task_struct_cpu
       FILE: task.c  LINE: 2899  FUNCTION: add_context()
[/usr/bin/crash] error trace: 55e309e049fe => 55e309dfb778 => 55e309e84ba7 => 55e309e84b2c

И на этом отладка заканчивается :(

Проверил через rpm -qip пакет ядра /var/cache/apt/archives/kernel-image-un-def и kernel-image-un-def-debuginfo-6.1.85-alt1.x86_64.rpm, скачанный по ссылке выше -- у обоих одинаковый DistTag p10+344896.100.2.1 , так что вроде символы должны подходить

В чем может быть дело ?
Comment 1 Pivkin Denis 2024-06-14 17:02:05 MSK
Ошибка воспроизводится с версией:
crash 7.3.0-alt1

Шаги воспроизведения:
1) # apt-get install -y kdump-tools
2) Добавить параметр crashkernel=256M в GRUB_CMDLINE_LINUX_DEFAULT в /etc/sysconfig/grub2
3) # update-grub
4) # systemctl enable kdump-tools
5) # reboot
6) # kdump-config status
7) # sync
8) # echo 1 > /proc/sys/kernel/sysrq
9) # echo c > /proc/sysrq-trigger
10) # apt-get install crash kernel-image-un-def-debuginfo
11) # crash /usr/lib/debug/lib/modules/6.1.85-un-def-alt1/vmlinux /var/crash/202211220350/kdump

Реальный результат:
WARNING: kernel relocated [608MB]: patching 133791 gdb minimal_symbol values
WARNING: kernel version inconsistency between vmlinux and dumpfile
please wait... (gathering task table data)
crash: invalid structure member offset: task_struct_cpu
       FILE: task.c  LINE: 2899  FUNCTION: add_context()
[/usr/bin/crash] error trace: 55f9bfc549fe => 55f9bfc4b778 => 55f9bfcd4ba7 => 55f9bfcd4b2c

Ожидаемый результат:
Анализ дампа ядра без ошибок
Comment 2 Vitaly Chikunov 2024-06-14 22:29:33 MSK
Что будет если воспользоваться crash из задания 350971?
Comment 3 Pivkin Denis 2024-06-17 10:10:37 MSK
(Ответ для Vitaly Chikunov на комментарий #2)
> Что будет если воспользоваться crash из задания 350971?

Данная ошибка не воспроизводится с crash из задания 350971
Comment 4 Vitaly Chikunov 2024-06-17 10:17:46 MSK
Спасибо за тест.