Отлаживаю драйвер для линукс. При каждом NULL dereference exception ядро падает. Приходиться перезагружаться. Занимает гиганское время. Пока 3-4 минуты ждёшь уже забываю в чём была проблема. А как вы решали такую проблему?
I>Отлаживаю драйвер для линукс. При каждом NULL dereference exception ядро падает. Приходиться перезагружаться. Занимает гиганское время. Пока 3-4 минуты ждёшь уже забываю в чём была проблема. А как вы решали такую проблему?
crash dump пишется в messages.
После перезагрузки читаешь его.
Для простоты напиши скриптик, который чистит файл messages перед каждым тестированием модуля
Без продуманного логгирования всё равно не обойдешься.
Поэтому рекомендую не откладывать логгирование в долгий ящик.
Здравствуйте, ivrubano, Вы писали:
I>Отлаживаю драйвер для линукс. При каждом NULL dereference exception ядро падает. Приходиться перезагружаться. Занимает гиганское время. Пока 3-4 минуты ждёшь уже забываю в чём была проблема. А как вы решали такую проблему?
Логи и еще раз логи. Полезно включить KALLSYMS, BUG, DEBUG_KERNEL, DEBUG_INFO, PAGE_POISONING, RUNTIME_DEBUG и т.д.
Еще есть kgdb, но им пользоваться не приходилось.
Обязательно бахнем! И не раз. Весь мир в труху! Но потом. (ДМБ)
Здравствуйте, ivrubano, Вы писали:
I>Отлаживаю драйвер для линукс. При каждом NULL dereference exception ядро падает. Приходиться перезагружаться. Занимает гиганское время. Пока 3-4 минуты ждёшь уже забываю в чём была проблема. А как вы решали такую проблему?
Так KDB(BSD)/KGDB(linux) же?
Здравствуйте, ivrubano, Вы писали:
I>Отлаживаю драйвер для линукс. При каждом NULL dereference exception ядро падает. Приходиться перезагружаться. Занимает гиганское время. Пока 3-4 минуты ждёшь уже забываю в чём была проблема. А как вы решали такую проблему?
KVM или другая виртуалка.
UserModeLinux (не для всех видов драйверов; но для FS, сети, IPC, etc. уже пойдёт)
Ну и против "забываю", конечно, serial console, снимки экрана виртуалки, netconsole, remote syslog, etc.